Iterator kald i JavaScript

Hvert successivt kald til iteratoren skal returnere et objekt med en speciel struktur. Lad os se på den. Lad os sige, at vi har et array:

javascriptlet arr = [1, 2, 3];

Lad os få iteratoren for arrayet i en variabel:

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

Nu indeholder denne variabel et objekt med metoden next. Denne metode vil returnere et objekt med nøglen value, som indeholder værdien af elementet, og nøglen done, som indeholder information om, hvorvidt gennemløbet er afsluttet eller ej:

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

Successive kald til metoden next vil hver gang give det næste element:

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

Og så snart elementerne er slut, vil vi se følgende værdier:

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

Få iteratoren for samlingen Map. Kald den successivt, indtil elementerne i samlingen er slut.

Задание 2

Få iteratoren for samlingen NodeList. Kald den successivt, indtil elementerne i samlingen er slut.

Задание 3

Få iteratoren for samlingen HTMLCollection. Kald den successivt, indtil elementerne i samlingen er slut.