Miito ya Iterator katika JavaScript

Kila mwito mfululizo wa iterator inapaswa kurudisha kitu cha muundo maalum. Tuuchunguze muundo huu. Tuchukulie tuna safu:

javascriptlet arr = [1, 2, 3];

Tupate iterator wa safu katika kutofautisha:

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

Sasa katika kutofautisha hii kuna kitu na njia next. Njia hii itarudisha kitu chenye ufunguo value, unaochukua thamani ya kipengele, na ufunguo done, unaochukua habari kuhusu ikiwa ukusanyaji umekwisha au la:

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

Mwito mfululizo wa njia next utatoa kila wakati kipengele kifuatacho:

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

Na mara tu vipengele vitakapokwisha, tutaona thamani zifuatazo:

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

Pata iterator ya mkusanyiko Map. Uiite mfululizo, hadi vipengele vya mkusanyiko visiishe.

Задание 2

Pata iterator ya mkusanyiko NodeList. Uiite mfululizo, hadi vipengele vya mkusanyiko visiishe.

Задание 3

Pata iterator ya mkusanyiko HTMLCollection. Uiite mfululizo, hadi vipengele vya mkusanyiko visiishe.