Клавиша / esc

.entries()

Метод возвращает итератор пар [значение, значение] коллекции Set.

Время чтения: меньше 5 мин

Кратко

Скопировано

Возвращает итератор, который обходит массив пар [значение, значение] коллекции Set в порядке добавления этих значений в коллекцию.

Обычно метод entries() возвращает итератор с парой [ключ, значение] коллекции, но так как коллекции Set не имеют ключей, то для поддержки универсального интерфейса итератор возвращает пару из одного и того же значения.

Метод используется редко.

Как пишется

Скопировано

Метод entries() вызывается без аргументов. Вызов метода возвращает итератор, который содержит пары [значение, значение]:

        
          
          const watchlist = new Set(['Сияние', 'Интерстеллар', 'Казино'])const pairs = watchlist.entries()console.log(pairs)// Set Iterator
          const watchlist = new Set(['Сияние', 'Интерстеллар', 'Казино'])
const pairs = watchlist.entries()

console.log(pairs)
// Set Iterator

        
        
          
        
      

Итератор можно обойти с помощью for...of:

        
          
          for (const movie of pairs) {  console.log(movie)}// ['Сияние', 'Сияние']// ['Интерстеллар', 'Интерстеллар']// ['Казино', 'Казино']
          for (const movie of pairs) {
  console.log(movie)
}

// ['Сияние', 'Сияние']
// ['Интерстеллар', 'Интерстеллар']
// ['Казино', 'Казино']

        
        
          
        
      

Итератор можно превратить в массив с помощью спред-синтаксиса:

        
          
          const movies = [...pairs]console.log(movies)// [//   ['Сияние', 'Сияние'],//   ['Интерстеллар', 'Интерстеллар'],//   ['Казино', 'Казино'],// ]
          const movies = [...pairs]
console.log(movies)

// [
//   ['Сияние', 'Сияние'],
//   ['Интерстеллар', 'Интерстеллар'],
//   ['Казино', 'Казино'],
// ]