Обработчик функции filter
должен возвращать логическое значение
При следующем подходе предполагается, что существуют только числа.
function zeroCount(arr) {
return arr.filter(el => !el).length;
}
console.log(zeroCount([2, 3, 0, 5, 0, 2, 0]));
Предыдущий подход генерирует ненужный массив, поэтому, если вы хотите сосчитать, лучше использовать функцию reduce
следующим образом:
function zeroCount(arr) {
return arr.reduce((r, el) => r + !el, 0);
}
console.log(zeroCount([2, 3, 0, 5, 0, 2, 0]));