Javascript if typeof ='undefined' 在 try/catch 空间
-
21-08-2019 - |
题
我有包含在 try/catch 块中的代码。我使用 typeof 来查明变量是否已定义:
if (typeof (var) == 'string') {
//the string is defined
}
然而,在 try/catch 块中使用它,会跳转到 catch 部分,而不是执行它应该执行的操作(如果已定义字符串,则对其执行某些操作)。
如何在不激活异常的情况下检查变量是否已定义?
解决方案
“变种”是不是有效的变量名 - 它是一个关键字
除此之外,你有什么应该是正确的。
其他提示
我会使用不带“typeof”的直接比较:
var vvv= 2;
alert( vvv !== undefined );
但要小心,要知道您是否要检查真实性(不是 false、null、未定义、“”或 0),还是要检查 null、未定义、false 或这些的组合。
如果您只是想查看该值是否有值,我上面放置的代码应该可以。
作为建议,我找到了这本书 巨大的: JavaScript - 好的部分
不隶属于 StackOverflow