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

Почему в массив добавляется только последний элемент?

Нужно чтобы в новый массив добавлялись только цифры, почему то добавляется только последняя найденная цифра. Почему так?
function filter_list(l) {
// Return a new array with the strings filtered out
for(var i = 0; i < l.length; i++) {
if (typeof l[i] != "string") {
var arr = [];
arr = arr.push(l[i]);
}
}
return arr;
}

filter_list([1,2,'a','b'])
  • Вопрос задан
  • 415 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
pashted
@pashted
тыжпрограммист
function filter_list(l) {
// Return a new array with the strings filtered out
            var arr = [];
            for (var i = 0; i < l.length; i++) {
                if (typeof l[i] != "string") {

                    arr.push(l[i]);
                }
            }
            return arr;
        }

        console.log(filter_list([1, 2, 'a', 'b']));


потому что при каждой итерации цикла у вас переменная перезаписыается
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы