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 коллекциясында негизинен кайсы итератор иштейт?