Задать вопрос
@alexnotonfire

Почему ноль не добавился в массив?

Задача - написать функцию, которая возьмет массив с числами и строками и оставит только числа.

Например, [1,'a','b',0,15] => [1,0,15]

Я написал функцию, но почему-то 0 не вернулся в новый массив. В чем дело?

function filter_list(l) {
  return l.filter(function(i){
    if (i !== String(i)) return i;
  })
}

filter_list([1,'a','b',0,15]); // 1, 15
  • Вопрос задан
  • 297 просмотров
Подписаться 1 Простой Комментировать
Ответ пользователя Павел Корнилов К ответам на вопрос (3)
KorniloFF
@KorniloFF Куратор тега JavaScript
Работаю по font-end / JS
Если сильно хочется, то можно так:
console.log(filter_list([1,'a','b',0,15]).valueOf());

function filter_list(arr) {
	var out = [];
	arr.forEach(function(i) {
		if(!isNaN(+i)) out.push(+i);
	})
	return out;
}
}
Ответ написан
Комментировать