Javascript数组的值是未定义的...我该如何测试
这个问题在这里已经有了答案:
array[index] == 'undefined'
将数组索引的值与字符串“undefined”进行比较。
你可能正在寻找typeof array[index] == 'undefined'
,它比较了类型。
您正在检查数组索引是否包含字符串"undefined"
,您应该使用typeof
运算符:
typeof predQuery[preId] == 'undefined'
或者使用undefined
全局属性:
predQuery[preId] === undefined
第一种方法更安全,因为undefined
全局属性是可写的,并且可以更改为任何其他值。
predQuery[preId]=='undefined'
您正在测试字符串'undefined'
; 您已经将此测试与将返回字符串的typeof
测试混淆了。 您可能的意思是针对undefined
的特殊值进行测试:
predQuery[preId]===undefined
请注意strict-equality操作符以避免通常不需要的匹配null==undefined
。
然而,有两种方法可以得到一个undefined
值:要么preId
是不是成员predQuery
,或者它是一个成员,但已设置为特殊的值undefined
值。 通常情况下,你只想检查它是否存在。 在这种情况下in
运营商更合适:
!(preId in predQuery)
链接地址: http://www.djcxy.com/p/95003.html
上一篇: Javascript array value is undefined ... how do I test for that