카테고리 없음
[타입스크립트] 제너레이터
유병각
2022. 2. 9. 22:47
[타입스크립트] 제너레이터
제너레이터
정의
제너레이터는 값을 생성하는 속도를 제어할 수 있다.
function* createFiboGenerater() {
let a = 0;
let b = 1;
while (true) {
yield a;
[a, b] = [b, a + b];
}
}
let generator = createFiboGenerater();
console.log(generator.next()); // {value: 0, done: false};
console.log(generator.next()); // {value: 1, done: false};
console.log(generator.next()); // {value: 1, done: false};
console.log(generator.next()); // {value: 2, done: false};
특징
함수 이름 앞에 붙은 별표(*) 는 함수가 제너레이터임을 의미한다.
제너레이터는 영구적으로 값을 생성 할 수 있다.
제너레이터는 yield 로 값을 방출한다.
제너레이터 함수는 IterableIterator 객체를 반환하고, 이 객체는 next 매서드를 가지고 있다.