javascript - 检查 javascript 中的未定义——我应该使用 typeof 吗?

标签 javascript undefined

我对如何最好地检查 javascript 中的变量是否未定义感到困惑。我一直这样做:

myVar === undefined;

但是在所有情况下都改用 typeof 更好吗?

typeof myVar === undefined;

undefined"undefined" 的用法又如何呢?我也见过这种用法?

最佳答案

这是最好的检查方式——完全安全:

typeof myVar === "undefined"

这没问题,但如果有人无助地覆盖了全局 undefined 值,它可能会失败:

myVar === undefined;

不得不说 ECMAScript 5 指定 undefined 是只读的,所以上面的内容在任何符合的浏览器中总是安全的。

这永远行不通,因为它最终会比较 "undefined"=== undefined(不同类型):

typeof myVar === undefined;

关于javascript - 检查 javascript 中的未定义——我应该使用 typeof 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15093930/

相关文章:

javascript - offset() 未定义但 == 或 === 不这么认为

javascript - ReferenceError SetInterval 未定义

javascript - 检查 JavaScript 中是否存在对象

javascript - Node 要求返回未定义

javascript - 我如何告诉谷歌翻译不要翻译网站的某个部分?

javascript - 如果映射的 td 等于某些内容,则删除表行

javascript - 如何基于 Google Books API 表示和自动完成建议的 JSON?

javascript - Jquery 对表行中的下拉列表进行排序

Javascript 奇怪的循环行为

javascript - Chrome 扩展函数返回未定义的字符串