可能重复:
Detecting an undefined object property in JavaScript
如何添加对未定义变量的检查,例如:
function A(val) {
if (val == undefined)
// do this
else
// do this
}
发布于 2012-05-18 21:17:12
JQuery库是专门为简化和统一某些JavaScript功能而开发的。
但是,如果您需要根据undefined
值检查变量,则不需要发明任何特殊方法,因为JavaScript有一个typeof
运算符,它简单、快速且跨平台:
if (typeof value === "undefined") {
// ...
}
它返回一个字符串,指示变量或其他未计算的操作数的类型。与if (value === undefined) { ... }
相比,这种方法的主要优点是,如果变量value
不存在,typeof
永远不会引发异常。
发布于 2012-05-18 21:24:52
在这种情况下,您可以使用=== undefined
比较:if(val === undefined)
这之所以有效,是因为val
始终存在(它是一个函数参数)。
如果你想测试一个不是参数的任意变量,也就是说可能根本没有定义,你必须使用if(typeof val === 'undefined')
来避免val
不存在的异常。
发布于 2012-05-18 21:18:08
请注意,typeof总是返回一个字符串,如果变量根本不存在,则不会生成错误。
function A(val){
if(typeof(val) === "undefined")
//do this
else
//do this
}
https://stackoverflow.com/questions/10653367
复制相似问题