测试是否在javascript中定义了变量?

boo*_*oom 33 javascript

如何测试变量是否定义?

if //variable is defined
    //do this
else
    //do this
Run Code Online (Sandbox Code Playgroud)

mit*_*esh 75

if (typeof variable !== 'undefined') {
  // ..
}
else
{
     // ..
}
Run Code Online (Sandbox Code Playgroud)

在这里找到更多解释:

JavaScript isset()等价

  • 使用!==进行严格的比较和更好的性能. (3认同)

Anu*_*rag 8

使用in运营商.

'myVar' in window; // for global variables only
Run Code Online (Sandbox Code Playgroud)

typeof 对于变量,检查将返回true,如果,

  1. 它尚未定义
  2. 它已被定义并具有价值undefined,或
  3. 它已经定义但尚未初始化.

以下示例将说明第二点和第三点.

// defined, but not initialized
var myVar;
typeof myVar; // undefined

// defined, and initialized to undefined
var myVar = undefined;
typeof myVar; // undefined
Run Code Online (Sandbox Code Playgroud)