Ba Trình Lặp Tích Hợp Sẵn Trong JavaScript

Trên thực tế, mỗi đối tượng có thể lặp chứa không phải một mà là ba trình lặp: values, keys và entries. Đối với mỗi loại đối tượng, mặc định sẽ áp dụng một trình lặp riêng. Đối với mảng - đó là values, còn, ví dụ, đối với bộ sưu tập Map, đó là entries.

Với kiến thức này, giờ đây chúng ta có thể áp dụng nguyên tắc này cho bất kỳ bộ sưu tập nào. Ví dụ, giả sử chúng ta có một bộ sưu tập Map:

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

Mặc định, đối với bộ sưu tập này, áp dụng trình lặp entries:

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

Nhưng chúng ta có thể dễ dàng lấy các khóa của bộ sưu tập:

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

Cũng có thể lấy các giá trị:

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

Trình lặp mặc định nào hoạt động trong bộ sưu tập Set?