Array.prototype[@@iterator]()

Это экспериментальная технология, часть предложения Harmony (ECMAScript 6).
Поскольку спецификация этой технологии ещё не стабилизировалась, проверьте таблицу совместимости её использования в различных браузерах. Также обратите внимание, что синтаксис и поведение экспериментальной технологии могут быть изменены в будущих версиях браузеров в соответствии с изменениями в спецификации.

Сводка

Начальное значение свойства @@iterator является тем же самым функциональным объектом, что и начальное значение, возвращаемое методом values().

Синтаксис

arr[Symbol.iterator]()

Примеры

Пример: итерация посредством цикла for...of

var arr = ['w', 'y', 'k', 'o', 'p'];
// ваш браузер должен поддерживать цикл for..of
// и переменные с областью видимости let в циклах for
for (let letter of arr) {
  console.log(letter);
}

Пример: альтернативный способ итерации

var arr = ['w', 'y', 'k', 'o', 'p'];
var eArr = arr[Symbol.iterator]();
console.log(eArr.next().value); // w
console.log(eArr.next().value); // y
console.log(eArr.next().value); // k
console.log(eArr.next().value); // o
console.log(eArr.next().value); // p

Спецификации

Спецификация Статус Комментарии
ECMAScript 6 (ECMA-262)
Определение 'Array.prototype[@@iterator]()' в этой спецификации.
Кандидат в рекомендации Изначальное определение.

Совместимость с браузерами

Возможность Chrome Firefox (Gecko) Internet Explorer Opera Safari
Базовая поддержка 38 17 (17) (.iterator)
27 (27) (["@@iterator"])
36 (36) ([Symbol.iterator])
Нет 25 Нет
Возможность Android Chrome для Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Базовая поддержка Нет Нет 17.0 (17) (.iterator)
27.0 (27) (["@@iterator"])
36.0 (36) ([Symbol.iterator])
Нет 25 Нет

Примечания по Gecko

  • С Gecko 17 (Firefox 17 / Thunderbird 17 / SeaMonkey 2.14) по Gecko 26 (Firefox 26 / Thunderbird 26 / SeaMonkey 2.23 / Firefox OS 1.2) вместо символа @@iterator использовалось свойство iterator (ошибка 907077), а с Gecko 27 по Gecko 35 — строка-заменитель "@@iterator" (ошибка 918828).

Смотрите также

Метки документа и участники

 Внесли вклад в эту страницу: Mingun
 Обновлялась последний раз: Mingun,