在标记重复项之前,请先阅读问题。这与undefined
变量无关。这与名称空间中不存在的变量有关。
我正在开发一个在浏览器和本机脚本中运行的代码库。两者之间的全局变量不同。例如,我想检查一下window
是否存在,但是像这样:
if (!!window) {
}
将引发错误:
JS错误ReferenceError:找不到变量:window
是否可以测试js中是否存在变量(不仅仅是未定义的变量)?
答案 0 :(得分:2)
您可以使用try/catch
语句。
try {
if (!!someVariable) {
console.log('yep');
}
} catch {
console.log('nope');
}
答案 1 :(得分:0)
您需要使用typeof运算符来查看变量是否存在 您需要测试您所关注的变量是否未定义为null,例如:
if (typeof variable === 'undefined' || variable === null) {
// variable does not exist
}