⊗jsSpItIOC 67 of 294 menu

Vytvorenie iterovateľného objektu v JavaScripte

Vytvorme si skutočný iterovateľný objekt, ktorý bude možné prechádzať cez cyklus for-of. Na to je potrebné objektu pridať príslušnú funkciu do Symbol.iterator.

Poďme to implementovať. Predpokladajme, že máme nasledujúci objekt:

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

Pridajme funkciu do Symbol.iterator:

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

Premeňme túto funkciu na generátor:

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

Vo vnútri našej funkcie this bude odkazovať na samotný objekt:

obj[Symbol.iterator] = function *() { console.log(this); // samotný objekt }

Spustíme v iterátore prechádzanie objektu:

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

Hotovo, objekt je možné prechádzať cyklom for-of:

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

Vytvorte objekt, ktorý je možné prechádzať cyklom for-of. Nech do prvku cyklu padne objekt, v ktorom kľúč key bude obsahovať kľúč prechádzaného objektu a kľúč val - hodnotu. Príklad:

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

Vypíše:

{key: 'a', val: 1} {key: 'b', val: 2} {key: 'c', val: 3}
Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť