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 жинағында әдепкі бойынша қандай итератор әрекет етеді?