Кратко
СкопированоМетод entries возвращает новый объект-итератор, созданный из пар индекс и значение для всех элементов массива. Подробнее о том, что такое итератор, можно прочитать в статье «Итератор».
Пример
СкопированоСоздадим объект-итератор и получим его значения с помощью for:
const cities = ['Сен-Тропе', 'Сан-Себастьян', 'Сан-Марино']const iterator = cities.entries()for (const item of iterator) { console.log(item)}// [0, 'Сен-Тропе']// [1, 'Сан-Себастьян']// [2, 'Сан-Марино']
const cities = ['Сен-Тропе', 'Сан-Себастьян', 'Сан-Марино']
const iterator = cities.entries()
for (const item of iterator) {
console.log(item)
}
// [0, 'Сен-Тропе']
// [1, 'Сан-Себастьян']
// [2, 'Сан-Марино']
Создадим объект-итератор и получим индекс и значение первого элемента коллекции:
const generations = ['X', 'Y', 'Z', 'Alpha']const iterator = generations.entries()console.log(iterator.next().value)// [0, 'X']
const generations = ['X', 'Y', 'Z', 'Alpha']
const iterator = generations.entries()
console.log(iterator.next().value)
// [0, 'X']
Как пишется
СкопированоArray не имеет аргументов.
Array возвращает новый объект-итератор, реализующий протокол перебора массива. При выполнении перебора для каждого элемента коллекции возвращается массив, содержащий индекс элемента в исходном массиве, и его значение.
Как понять
Скопированоentries работает схожим образом с методом values, но позволяет получить для каждого элемента индекс и значение.
Array не нужно путать со статическим методом Object, который возвращает массив пар индекс и значение перечисляемых свойств объекта.
Подсказки
Скопировано💡 Если массив имеет незаполненные элементы, то объект-итератор, созданный при вызове entries, вернёт при обходе undefined как значение для всех незаполненных элементов:
const words = [, 'этот', 'тот']for (const [index, value] of words.entries()) { console.log(index, value)}// 0 undefined// 1 этот// 2 тот
const words = [, 'этот', 'тот']
for (const [index, value] of words.entries()) {
console.log(index, value)
}
// 0 undefined
// 1 этот
// 2 тот