Iterator.prototype[Symbol.iterator]()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2016.

Phương thức [Symbol.iterator]() của các thực thể Iterator triển khai giao thức iterable và cho phép các iterator tích hợp được tiêu thụ bởi hầu hết các cú pháp kỳ vọng iterable, chẳng hạn như cú pháp spread và vòng lặp for...of. Nó trả về giá trị của this, chính là đối tượng iterator.

Cú pháp

js
iterator[Symbol.iterator]()

Tham số

Không có.

Giá trị trả về

Giá trị của this, chính là đối tượng iterator.

Ví dụ

Lặp sử dụng vòng lặp for...of

Lưu ý rằng bạn hiếm khi cần gọi phương thức này trực tiếp. Sự tồn tại của phương thức [Symbol.iterator]() làm cho các iterator tích hợp trở thành iterable, và các cú pháp lặp như vòng lặp for...of tự động gọi phương thức này để lấy iterator để lặp.

js
const arrIterator = [1, 2, 3].values();
for (const value of arrIterator) {
  console.log(value);
}
// In ra: 1, 2, 3

Đặc điểm kỹ thuật

Specification
ECMAScript® 2027 Language Specification
# sec-%iteratorprototype%-%symbol.iterator%

Tương thích trình duyệt

Xem thêm