Страницы

Поиск по вопросам

среда, 10 октября 2018 г.

По какому принципу цикл FOR IN обходит массив?

Меня интересует порядок обращения к элементам в массиве с помощью цикла FOR IN. А то есть с какого элемента начинает и каков принцип выборки.


Ответ

Цикл for...in проходит через перечисляемые свойства объекта, в произвольном порядке
for...in не следует использовать для Array, где важен порядок индексов. Индексы массива перечисляемые свойства с целочисленными именами, а в остальном аналогичны объектам. Нет гарантии, что for...in будет возвращать индексы в нужном порядке и вернёт все перечисляемые свойства, включая имеющие нецелочислененные имена и наследуемые
Вдобавок, порядок обхода зависит от реализации ECMAScript браузером
стандарт ECMAScript оставляет порядок итерации по свойствам объектов на усмотрение реализующей стороны
Для массивов предпочтительней использовать простой for

Комментариев нет:

Отправить комментарий