javascript中檢測變數是否存在時,最好使用typeof

struggle_LZ發表於2018-05-21

var result = '';
if (typeof somevar !== 'undefined'){
    result = 'yes';
}
result;
''複製程式碼

在這種情況下,typeof返回的是一個字串,可以與字串“undefined"進行直接比對。

注意:如果這裡的somevar是一個已經宣告但未尚賦值的變數,結果也是相同的(或者說測試變數值是否為undefined)

var somevar;
if (typeof somevar !== 'undefined'){
    result = 'yes';
}
result;
''


somevar = undefined;
if (typeof somevar 1== 'undefined'){
     result = 'yes';
}
result;
''複製程式碼

如果一個已被定義的變數被賦值為undefined的任何值後,該變數的typeof結果就不再是undefined。

somevar = 123;
if (typeof somevar !== 'undefined'){
    result = 'yes';
}
result;
'yes';複製程式碼


相關文章