generator 함수 이해

이동주·2022년 4월 1일
0

generator 함수

const gen = function* () {
	console.log(1);
	yield;
	console.log(2)
	yield;
}

=> *를 붙여서 generator 함수 표시
=> yield: 중간 멈춤(중간점)

gen().next()
=> 호출 시에는 .next()를 붙임
=> 1번째 호출 시 {value: 1, done: false} 출력
=> 2번째 호출 시 {value: 2, done: false} 출력
=> 3번째 호출 시 {value: undefined, done: true} 출력

무한 반복 generator 함수

while을 사용해서 무한 반복 함수 만들기

let i = 0;
const gen = function* () {
	while (true) {
    	yield i++;
    }
}

=> 호출하게 되면 호출할 때마다 0, 1, 2, 3, 4, 5,,,,, 출력
=> done은 항상 false
=> 이를 활용해서 이벤트 리스너 역할을 할 수도 있음

profile
안녕하세요 이동주입니다

0개의 댓글