JS generator 함수

서재환·2022년 2월 15일
0

JavaScript

목록 보기
20/25

Generator 함수

제너레이터 함수는 함수 호출 시 일반 함수와는 다르게 블럭 내용에 있는 명령어를 실행하지 않고
해당 함수를 실행 준비상태로 만든다는 특징이 일반 함수와는 다른 점이다. 그리고 특징으로 객체
를 반환한다.

해당 객체에는 함수를 실행 할 도구가 담겨있다. 해당 도구는 함수를 실행하고 멈출 수 있는 기능
이있다.

해당 함수를 컨트롤 할 수 있는 도구는 next라는 메서드이다. generator 함수에 값을 줄 수
도 있고 값을 전달할 수도 있다. 현 상황에서는 이 정도로만 generator 함수에 대해서 알고 후
에 좀더 자세히 다룰 일이 있을 때 더 다루기로 하자.
function* gen() {
    yield 10;
    yield 20;
    return 30;
}

const g = gen();

g.next();
g.next();
g.next();
위의 generator 함수를 실행 할 경우 g.next() 호출시 yield 10이 호출되고 그 다음 20, 30
순으로 호출된다. 함수를 한번에 모두 실행하지 않고 정해준 시점에 맞추어 함수를 호출할 수 있다는 것
이 특징이라고 할 수 있다.

0개의 댓글