ES6 스터디 정리 : Generator

Llux lux·2022년 5월 20일
0

ES6 스터디

목록 보기
13/21

Generator 함수란?

제네레이터 란 이터레이터 객체를 반환하는 함수이다.

const friends = ["1","2","3"];

function* friendTeller(){
    for(const friend of friends){
        yield friend;
    }
}

const teller = friendTeller();
console.log(teller.next()) //{value: '1', done: false}
console.log(teller.next()) //{value: '2', done: false}
console.log(teller.next()) //{value: '3', done: false}
console.log(teller.next()) //{value: undefined, done: true}

function 뒤에 * 을 추가하면 제너레이터 함수라는 의미이다.
모든 값을 리턴하지 않고 next()가 호출 될 때까지 실행을 멈춘다.

제너레이터 함수는 이터레이터를 리턴하므로 아래와 같이 for of 에서 사용 가능하다

const aa = friendTeller();

for (const a of aa) {
    console.log(a);
  }

유용한 포스트

https://meetup.toast.com/posts/73

profile
하하하

0개의 댓글