[js]判断undefined变量的三种方式的区别

判断undefined变量的疑惑

我以前一直不清楚判断数据类型为undefined的差异,自己用的是
typeof x==="undefined",看到别人写x===undefined就非常奇怪。但由无可辩驳,说出那么做有什么不好。现在终于知道了。

结论

如果x为一个全局变量,并且不在当前js文件里面,最好用typeof,否则如果这个变量不存在,很可能会发生报错。如果x明显在当前作用域内,那么用那种方法都不算错。

补充第三种判断方式

x===void 0这种方式好处就是写的字符数量要比x===undefined少,而且防止undefined在方法里面被复写。

参考文档

JavaScript判断变量是否为undefined两种方式差异

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容