อิเทอเรเตอร์ในตัวสามประเภทใน JavaScript

ในความเป็นจริงแล้ววัตถุที่สามารถวนซ้ำได้ทุกวัตถุ มีอิเทอเรเตอร์ไม่ใช่หนึ่งตัว แต่มีสามตัว: values, keys และ entries วัตถุแต่ละประเภทจะมีอิเทอเรเตอร์เริ่มต้น ที่ใช้แตกต่างกันไป สำหรับอาเรย์ - นั่นคือ values และตัวอย่างเช่น สำหรับคอลเลกชัน Map นั่นคือ entries

ด้วยความรู้เหล่านี้ ตอนนี้เราสามารถ นำหลักการนี้ไปใช้กับคอลเลกชันใดๆ ก็ได้ ตัวอย่างเช่น สมมติว่าเรามีคอลเลกชัน Map:

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

โดยค่าเริ่มต้นสำหรับคอลเลกชันนี้จะใช้ อิเทอเรเตอร์ entries:

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

แต่เราสามารถรับคีย์ของ คอลเลกชันของเราได้อย่างง่ายดาย:

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

และยังสามารถรับค่าด้วย:

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

อิเทอเรเตอร์ใดที่ทำงานโดยค่าเริ่มต้น ในคอลเลกชัน Set?