⊗jsSpItIOC 67 of 294 menu

JavaScript'te Yinelemeli Nesne Oluşturma

Gerçek bir yinelemeli nesne oluşturalım, for-of döngüsüyle üzerinden geçilebilen. Bunun için nesneye Symbol.iterator içinde ilgili fonksiyonu eklememiz gerekiyor.

Haydi gerçekleştirelim. Elimizde aşağıdaki nesne olsun:

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

Symbol.iterator içine bir fonksiyon ekleyelim:

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

Bu fonksiyonu bir jeneratöre dönüştürelim:

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

Fonksiyonumuzun içinde this nesnenin kendisine referans verecek:

obj[Symbol.iterator] = function *() { console.log(this); // nesnenin kendisi }

Yineleyicide nesneyi döngüye sokalım:

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

İşte oldu, nesne artık for-of döngüsüyle üzerinden geçilebilir:

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

for-of döngüsüyle üzerinden geçilebilen bir nesne yapın. Döngü elemanına, key anahtarında üzerinden geçilen nesnenin anahtarı, val anahtarında ise değeri olan bir nesne gelsin. Örnek:

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

Şunu yazdıracak:

{key: 'a', val: 1} {key: 'b', val: 2} {key: 'c', val: 3}
Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet