У меня есть массив чисел с нулями. Я хочу получить количество ненулевых элементов. Мой код:Странное поведение при проверке нулей в массиве javascript
var arrayWithNulls = [null, 8, 3, null, 5, 0, 9];
var cleanArray = [];
for(i = 0; i < arrayWithNulls.length; i++){
if(arrayWithNulls[i])
cleanArray.push(arrayWithNulls[i]);
}
console.log(cleanArray.length);
Но я получаю 4 вместо 5 в качестве результата. Что мне не хватает?
0 означают ложные ... –
'если (arrayWithNulls [я]! == NULL)' –
Таким образом, проблема заключается в 0 и может означать число и ложь в JS, легко miss –