Kolme JavaScriptin sisäänrakennettua iteraattoria

Itse asiassa jokainen iteroitava objekti sisältää ei yhden iteraattorin, vaan kolme: values, keys ja entries. Jokaiselle objektityypille oletusarvoisesti käytetään omaa iteraattoriaan. Taulukoille - se on values, ja esimerkiksi Map-kokoelmalle, se on entries.

Nämä tiedot hallussa, voimme nyt soveltaa tätä periaatetta mihin tahansa kokoelmaan. Esimerkiksi, oletetaan että meillä on Map-kokoelma:

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

Oletusarvoisesti tälle kokoelmalle käytetään iteraattoria entries:

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

Mutta voimme helposti saada kokoelmamme avaimet:

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

Voimme saada myös arvot:

javascriptfor (let elem of map.values()) {
  console.log(elem); // 1, 2, 3
}
Задание 1

Mikä iteraattori on oletusarvoisesti käytössä Set-kokoelmassa?