需要检查特定索引处的数组项是否包含值。可以定义或不定义阵列索引,可以定义或不定义阵列。索引处的值可以是数字,字符串或空字符串 - 如果完全定义了索引。
有什么问题
编辑 - 删除了引号
if(undefined===array[0]){
console.log('undefined');
}
答案 0 :(得分:3)
实际上是的,您错误"undefined"
类型的undefined
类型。
您可以写下:
if (undefined === array[0]) {
console.log('undefined');
}
或
if ('undefined' === typeof array[0]) {
console.log('undefined');
}
如果array
本身可能未定义,您当然应该在之前添加检查,例如:
if (undefined === array || undefined === array[0]{
console.log('undefined');
}
答案 1 :(得分:0)
if(typeof array[0] === "string" && array[0] !== "")
这将是一个javascript等价的例如C#的!string.IsNullOrEmpty
。
在数组中包含多个数据类型会使检查变得复杂,并且表明构造代码时出错。例如,如果您在数组中输入null
会发生什么?然后Tomek的测试将失败。当然,您也可以对null
进行另一次检查,但我会说重组您的数据模型会更好。