본문 바로가기

자바스크립트 문법 (16) 반복자 & 발생자

by Recstasy 2019. 5. 20.

(16) 반복자 & 발생자 


ES2015로 넘어오면서, let ~ of를 활용하면, 배열에서도 반복을 쉽게 구현할 수 있다. 반복자와 발생자는 직접 실습을 해야만 원리를 이해하기 쉽다. 반복자는 불편한 for구문을 개선한 방식이며, 발생자는 return구문을 개선했다. 바로 예시를 보자.


1 반복자

반복자는 let ~ of 명령어나 for ~ of 명령어로 배열속의 key와 value값을 정렬해주는 편리한 매소드이다.



[예시]

let data_ary = ['one','two','three'];

let data_str = '가나다라마';

let data_map = new Map(

         [

['Mon','월요일'],

['TUE','화요일'],

['WED','수요일'],

['THR','목요일']

                 ]

    );

for( let data1 of data_ary ){

console.log( data1 );        //결과 :  one, two, three

}

for( let data2  of data_str ){

console.log(data2);          //결과 : 가,나,다,라,마

}

for( let [key,value] of data_map ){

console.log( `${key}:${value}` );  //결과 : Mon : 월요일 , TUE : 화요일 , WED : 수요일 , THR :목요일 

}


2 발생자

발생자는 return 명령어로는 하나밖에 전달할 수 없는 결과값을 yield 명령어로 여러번 전달할 수 있도록 해준다. 


[예시]

function* Generalator( ){

yield '한국';

yield '일본';

yield '중국';

}

for(let g of Generalator( )){

console.log(g);

}

  // 결과: 한국

             일본

             중국



댓글

최신글 전체

이미지
제목
글쓴이
등록일