Tiga Iterator Bawaan dalam JavaScript

Sebenarnya, setiap objek yang dapat diiterasi mengandung bukan hanya satu iterator, tetapi tiga: values, keys dan entries. Untuk setiap jenis objek, secara default diterapkan iterator-nya sendiri. Untuk array - ini adalah values, dan, misalnya, untuk koleksi Map, ini adalah entries.

Dengan pengetahuan ini, kita sekarang dapat menerapkan prinsip ini ke koleksi apa pun. Misalnya, kita memiliki koleksi Map:

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

Secara default untuk koleksi ini diterapkan iterator entries:

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

Tetapi kita dapat dengan mudah mendapatkan kunci dari koleksi kita:

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

Kita juga bisa mendapatkan nilainya:

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

Iterator default mana yang berlaku pada koleksi Set?