(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);
}
// 결과: 한국
일본
중국
'코드 스터디' 카테고리의 다른 글
자바스크립트 문법 (18) String객체 (0) | 2019.05.22 |
---|---|
자바스크립트 문법(17) 『for in & for of』 (0) | 2019.05.21 |
자바스크립트 문법 (15) Class (0) | 2019.05.19 |
자바스크립트 문법 (14) private, public 프로토타입 객체모델 (0) | 2019.05.18 |
자바스크립트 문법 (13) 객체의 타입 판정하기 (0) | 2019.05.17 |
댓글