⊗jsSpItIOC 67 of 294 menu

Креирање итерабилног објекта у JavaScript-у

Хајде да креирамо прави итерабилни објекат који се може пребројити помоћу циклуса for-of. За то је потребно објекту додати одговарајућу функцију у Symbol.iterator.

Хајде да имплементирамо. Нека имамо следећи објекат:

let obj = { a: 1, b: 2, c: 3, };

Додајмо функцију у Symbol.iterator:

obj[Symbol.iterator] = function() { }

Претворимо ову функцију у генератор:

obj[Symbol.iterator] = function *() { }

Унутар наше функције this ће се позивати на сам објекат:

obj[Symbol.iterator] = function *() { console.log(this); // сам објекат }

Покренимо у итератору пребрајање објекта:

obj[Symbol.iterator] = function *() { for (let key in this) { yield obj[key]; } }

То је то, објекат се може пребрајати циклусом for-of:

for (let elem of obj) { console.log(elem); // 1, 2, 3 }

Направите објекат који се може пребројити циклусом for-of. Нека у елемент циклуса упада објекат, у чијем кључу key ће бити кључ пребрајаног објекта, а у кључу val - вредност. Пример:

let obj = {a: 1, b: 2, c: 3}; for (let elem of obj) { console.log(elem); }

Исписаће:

{key: 'a', val: 1} {key: 'b', val: 2} {key: 'c', val: 3}
Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј