⊗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ščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부