[js]判斷undefined變量的三種方式的區別

判斷undefined變量的疑惑

我以前一直不清楚判斷數據類型為undefined的差異,自己用的是
typeof x==="undefined",看到別人寫x===undefined就非常奇怪。但由無可辯駁,說出那么做有什么不好。現在終于知道了。

結論

如果x為一個全局變量,并且不在當前js文件里面,最好用typeof,否則如果這個變量不存在,很可能會發生報錯。如果x明顯在當前作用域內,那么用那種方法都不算錯。

補充第三種判斷方式

x===void 0這種方式好處就是寫的字符數量要比x===undefined少,而且防止undefined在方法里面被復寫。

參考文檔

JavaScript判斷變量是否為undefined兩種方式差異

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容