Panggilan Iterator dalam JavaScript

Setiap panggilan berurutan iterator hendaklah memulangkan objek dengan struktur khas. Mari kita lihat strukturnya. Katakan kita mempunyai satu array:

javascriptlet arr = [1, 2, 3];

Dapatkan iterator array ke dalam pembolehubah:

javascriptlet iter = arr[Symbol.iterator]();

Sekarang dalam pembolehubah ini mengandungi objek dengan kaedah next. Kaedah ini akan memulangkan objek dengan kunci value, yang mengandungi nilai elemen, dan kunci done, yang mengandungi maklumat tentang sama ada lelaran telah tamat atau belum:

javascriptconsole.log( iter.next() ); // {value: 1, done: false}

Panggilan berurutan kaedah next akan memberikan elemen seterusnya setiap kali:

javascriptconsole.log( iter.next() ); // {value: 1, done: false}
console.log( iter.next() ); // {value: 2, done: false}
console.log( iter.next() ); // {value: 3, done: false}

Dan sebaik sahaja elemen habis, kita akan melihat nilai berikut:

javascriptconsole.log( iter.next() ); // {value: undefined, done: true}
Задание 1

Dapatkan iterator bagi koleksi Map. Panggilnya secara berurutan, sehingga elemen koleksi habis.

Задание 2

Dapatkan iterator bagi koleksi NodeList. Panggilnya secara berurutan, sehingga elemen koleksi habis.

Задание 3

Dapatkan iterator bagi koleksi HTMLCollection. Panggilnya secara berurutan, sehingga elemen koleksi habis.