АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP или фреймворки. Сегодня последний день для записи! Жми!
⊗jsSpItThII 72 of 294 menu

Три встроенных итератора в JavaScript

На самом деле каждый итерируемый объект содержит не один итератор, а три: values, keys и entries. Для каждого типа объектов по умолчанию применяется свой итератор. Для массивов - это values, а, например, для коллекции Map, это entries.

Обладая этими знаниями, мы теперь можем применить этот принцип к любой коллекции. Например, пусть у нас есть коллекция Map:

let map = new Map(); map.set('a', 1); map.set('b', 2); map.set('c', 3);

По умолчанию для этой коллекции применяется итератор entries:

for (let elem of map) { console.log(elem); // ['a', 1], ['b', 2], ['c', 3] }

Но мы легко можем получить ключи нашей коллекции:

for (let elem of map.keys()) { console.log(elem); // 'a', 'b', 'c' }

Также можем получить и значения:

for (let elem of map.values()) { console.log(elem); // 1, 2, 3 }

Какой итератор по умолчанию действует в коллекции Set?

enru