条件内部定义的变量在外部不可用
Variable defined inside conditional not available outside
我知道这是超级基本的,但我不明白为什么它不起作用。我期待在最后 console.log 中看到元素 .basic_form。相反,我得到以下信息:
if ( typeof basic_form === 'undefined' || basic_form === nulll ){
console.log( 'not defined yet' );
let basic_form = document.querySelector( '.basic_form' );
console.log( basic_form) ;
}
console.log( basic_form );
Output:
1> not defined yet
2> the element .basic_form
3> Uncaught ReferenceError: basic_form is not defined (???)
任何见解将不胜感激!
在块内声明的变量在外部不可访问。您可以在 Variable scope and closure.
上找到更多信息
basic_form 它是在 if 语句内部定义的,您需要在外部定义它。
我觉得应该是这样的。
let basic_form = document.querySelector( '.basic_form' );
if ( typeof basic_form === 'undefined' || basic_form === nulll ){
console.log( 'not defined yet' );
console.log( basic_form) ;
}
console.log( basic_form );
我知道这是超级基本的,但我不明白为什么它不起作用。我期待在最后 console.log 中看到元素 .basic_form。相反,我得到以下信息:
if ( typeof basic_form === 'undefined' || basic_form === nulll ){
console.log( 'not defined yet' );
let basic_form = document.querySelector( '.basic_form' );
console.log( basic_form) ;
}
console.log( basic_form );
Output:
1> not defined yet
2> the element .basic_form
3> Uncaught ReferenceError: basic_form is not defined (???)
任何见解将不胜感激!
在块内声明的变量在外部不可访问。您可以在 Variable scope and closure.
上找到更多信息basic_form 它是在 if 语句内部定义的,您需要在外部定义它。 我觉得应该是这样的。
let basic_form = document.querySelector( '.basic_form' );
if ( typeof basic_form === 'undefined' || basic_form === nulll ){
console.log( 'not defined yet' );
console.log( basic_form) ;
}
console.log( basic_form );