我刚刚开始用javascript编程。但我仍然对它处理数组的方式感到困惑。 问题是我有一个数组,其中有一些内容为undefined。我想检查那些未定义的值并转义它们。我该怎么做。以下代码无效,我找不到解决此问题的方法。
if(myarray[0]!=='undefined')
if(myarray[0])!='undefined') // I have also tried
if(myarray[0]).search('undefined')==(-1)) // and also this
但是这些选项都不起作用。我可以在调试时看到数组中的值未定义'但这种情况从未得到满足。再一次,我的目标是在不明确的时候做点什么。请问我怎么能这样做。我发现了类似的问题Test if something is not undefined in JavaScript,但它不起作用
答案 0 :(得分:1)
您正在将undefined
与'undefined'
进行比较,这是一个字符串,因此它不同。你需要这样比较:
myarray=[undefined];
if(myarray[0]!==undefined){
console.log(4)
}
答案 1 :(得分:1)
您将myarray[0]
值与字符串值undefined
进行比较。
你需要的是:
if (typeof(myarray[0]) !== 'undefined')
希望这有帮助!
答案 2 :(得分:1)
在我当前的项目中,我使用下划线来检查undefined。它非常简单直接。
var array = [];
if (_.isUndefined(array));
答案 3 :(得分:0)
您应该按如下方式检查:if(typeof(myarray[0]) != 'undefined')