이터레이터 제너레이터 값 흐름
이터러블은 순회 가능한 대상을 뜻하고, 이터레이터는 next() 호출마다 다음 값을 돌려주는 규칙을 따른다.
| 개념 | 역할 | 대표 문법 | 확인할 것 |
|---|---|---|---|
| Iterable | 반복을 시작할 수 있음 | Symbol.iterator | for...of에서 읽히는가 |
| Iterator | 현재 위치와 다음 값 관리 | next() | done이 true가 되는가 |
| Generator function | iterator를 쉽게 만드는 함수 | function* | yield 지점이 명확한가 |
| yield | 값을 내보내고 실행을 멈춤 | yield value | 다시 next할 때 이어지는가 |
| Spread/destructure | 반복 계약을 소비 | [...iterable] | 무한 반복을 펼치지 않는가 |
제너레이터는 값을 한 번에 만들지 않고 필요할 때마다 next로 흐름을 재개하는 반복 도구다.