我有以下数组。
var arrayNames = [ null, 'data', null];
我想检查数组中的哪个位置为null。对于前面的例子,数组元素[0]和[2]为空,
所以在输出中,我需要1,2分配给变量' nullValues' 有人可以让我知道如何实现这一目标。可能很简单,我愚蠢到不能得到它。任何帮助表示赞赏。谢谢。
答案 0 :(得分:1)
您可以使用Array#reduce
仅获取null
值的元素索引。
let arrayNames = [null, 'data', null];
let nullValues = arrayNames.reduce((s, a, i) => {
if (a == null) {
s.push(i);
}
return s;
}, []);
console.log(nullValues);
答案 1 :(得分:1)
只需将评论替换为您想要对null执行的任何操作。
for (int i = 0; i < arrayNames.length; i++) {
if (arrayNames[i] === null) {
// Do stuff for index i
}
}
答案 2 :(得分:0)
var arrayNames = [ null, 'data', null];
var nullValues = []
arrayNames.forEach(function(item, index) {
if (item === null) {
nullValues.push(index);
}
});
console.log(nullValues) // [0, 2]
这假设您定位了具有Array.forEach()访问权限的浏览器。如果你没有,那么
var arrayNames = [ null, 'data', null];
var nullValues = []
for (var i = 0; i < arrayNames.length; i++) {
if (arrayNames[i] === null) {
nullValues.push(i);
}
};
console.log(nullValues) // [0, 2]