JavaScript метод entries()

Определение и применение

JavaScript метод entries() возвращает объект итератор, который содержит пары ключ/значение по каждому индексу в массиве. Работу метода показывает пример «Как перебрать пары индекса и значения».

Поддержка браузерами

Спецификация: ecma262

Поддерживается во всех основных браузерах с 2015 года.

Показать браузеры
Совместимостьjavascript.builtins.Array.entries
ВозможностьКомпьютерыМобильные
ChromeEdgeFirefoxOperaSafariChrome AndroidFirefox for AndroidOpera AndroidSafari on iOSSamsung BrowserWebView AndroidWebView on iOS
entries✓38✓12✓28✓25✓8✓38✓28✓25✓8✓3.0✓38✓8

поддерживаетсяс ограниченияминет поддержкинет данных≤31 — не позднее версии 31

JavaScript синтаксис

JavaScript
array.entries();

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

ECMAScript: Array.prototype.entries.

Значения параметров

Параметров нет.

Возвращаемое значение

Новый итератор пар [индекс, значение]. Исходный массив не изменяется.

Особенности

Итератор выдаёт пары по возрастанию индекса. Пустая позиция даёт undefined; next() возвращает объект с value (очередной результат) и done (признак завершения).

Примеры, попробуйте сами

Как перебрать пары индекса и значения

Измените элементы массива или удалите элемент, оставив пустую позицию. Сравните пары [индекс, значение] и результат деструктуризации в цикле.

index.html
HTML
<p>Результат выполнения выводится в консоль.</p>
main.js
JavaScript
let array = ['one', 'two', 'three'] // инициализируем переменную, содержащую массив

let iterator = array.entries() // инициализируем переменную, содержащую объект итератор

for (let item of iterator) {
    // проходим циклом по объекту
    console.log(item) // выводим пары ключ/значение
}

// [0, "one"]
// [1, "two"]
// [2, "three"]

// Деструктуризация сразу получает индекс и значение; пустая позиция даёт undefined.
const sparse = ['a', , 'c']
for (const [index, value] of sparse.entries()) {
    console.log(index, value) // 0 "a", 1 undefined, 2 "c"
}