სამი ჩაშენებული იტერატორი 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 კოლექციაში?