Klici iteratorja v JavaScript
Vsak zaporedni klic iteratorja mora vrniti objekt posebne strukture. Oglejmo si jo. Recimo, da imamo polje:
let arr = [1, 2, 3];
Pridobimo iterator polja v spremenljivko:
let iter = arr[Symbol.iterator]();
Zdaj ta spremenljivka vsebuje objekt
z metodo next. Ta metoda bo vrnila
objekt s ključem value, ki vsebuje
vrednost elementa, in ključem done,
ki vsebuje informacijo o tem, ali se je
prebiranje končalo ali ne:
console.log( iter.next() ); // {value: 1, done: false}
Zaporedni klic metode next
bo vsakič vrnil naslednji
element:
console.log( iter.next() ); // {value: 1, done: false}
console.log( iter.next() ); // {value: 2, done: false}
console.log( iter.next() ); // {value: 3, done: false}
In ko bodo elementi zmanjkali, bomo videli naslednje vrednosti:
console.log( iter.next() ); // {value: undefined, done: true}
Pridobite iterator zbirke Map.
Zaporedno ga kličite,
dokler se elementi zbirke ne končajo.
Pridobite iterator zbirke NodeList.
Zaporedno ga kličite,
dokler se elementi zbirke ne končajo.
Pridobite iterator zbirke HTMLCollection.
Zaporedno ga kličite,
dokler se elementi zbirke ne končajo.