Почему в js последний индекс for each - remove? [дубликат]

122
22 декабря 2021, 21:40
На этот вопрос уже даны ответы здесь:
В чём опасность использования for .. in для объекта или массива? (2 ответа)
По какому принципу цикл FOR IN обходит массив? (2 ответа)
Закрыт 2 года назад.

Для работы с объектами в массиве решил попробовать for each (for (const item in array) {}), но столкнулся с проблемой - почему последний item не число, а слово remove? Вроде как понятно - в массиве больше нет индексов и он превращает item в remove, но почему именно так? Нельзя что-ли вместо этого сразу выйти из цикла?

Answer 1

var array = [{},{},{},{}]; 
for (const item in array) console.log(item);

Где-то у Вас есть код, который делает вот так:

Array.prototype.remove = function() { console.log("in remove"); }; 
var array = [{},{},{},{}]; 
for (const item in array) console.log(item);

READ ALSO
Как вывести переданные массив json c сервера на клиент ajax? python+flask+jquery

Как вывести переданные массив json c сервера на клиент ajax? python+flask+jquery

Не получается вывести массив json в виде таблицу в html

166
Таймер, кнопка и JS

Таймер, кнопка и JS

Подскажите, почему цифра, которая выводится через text отстает от таймера на 1 ?

208
Не закругляются углы в таблице с border

Не закругляются углы в таблице с border

Здравствуйте уважаемые гуру верстки

250
NullPointerException при назначении роли пользователю

NullPointerException при назначении роли пользователю

регистрирую нового пользователя

193