我有以下數組。檢查哪些數組元素具有空值
var arrayNames = [ null, 'data', null];
我想檢查數組中的哪個位置爲空。數組元素[0]和[2]爲空,
所以在輸出端,我需要1,2被分配給一個變量'nullValues' 有人可以讓我知道如何做到這一點。可能很簡單,我很愚蠢,不能得到它。任何幫助表示讚賞。謝謝。
我有以下數組。檢查哪些數組元素具有空值
var arrayNames = [ null, 'data', null];
我想檢查數組中的哪個位置爲空。數組元素[0]和[2]爲空,
所以在輸出端,我需要1,2被分配給一個變量'nullValues' 有人可以讓我知道如何做到這一點。可能很簡單,我很愚蠢,不能得到它。任何幫助表示讚賞。謝謝。
您可以使用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);
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]
只需將您想要對null執行的任何操作替換即可。
for (int i = 0; i < arrayNames.length; i++) {
if (arrayNames[i] === null) {
// Do stuff for index i
}
}
這不運行 – mmenschig
@mmenschig它對我來說很好,只需單擊'run code snippet'來查看結果。 –
我正在建議'過濾器',但你的答案是更好的:) ^^ – btzr