[JavaScript] 제너레이터와 이터레이터
·
JavaScript
1. 제너레이터 함수? ES6에 도입된 제너레이터(Generator) 함수는 이터러블을 생성하는 함수이다. 이전에 사용한 이터레이션 프로토콜을 준수해서 사용자 생성 방식보다 간단하게 이터러블을 구현할 수 있다. 또, 제너레이터 함수는 비동기 처리에 유용하게 사용된다. function* gen() { yield 1; yield 2; yield 3; } const genlter = gen(); console.log(genIter.next()); // {value:1, done: false} console.log(genIter.next()); // {value:2, done: false} console.log(genIter.next()); // {value:3, done: false} console.log(g..
[JavaScript] ES6에서의 순회와 이터러블
·
JavaScript
1. ES6에서의 리스트 순회 우리가 일반적으로 사용하는 리스트의 순회는 for( let i = 0; 1 < 10; i++) 방식이다. const list = [1, 2, 3]; for(let i = 0; i < list.length; i++) { console.log(list[i]); } ES6에 오면서 새로운 방식의 리스트 순회가 생겼다. const list = [1, 2, 3]; for(const a of list) { console.log(a); } for of 방식으로 내부 데이터를 쉽게 조회하는 방법이 생겼다. 2. 이터러블/이터레이터 프로토콜 이터러블 프로토콜은 ES6에서 도입된 것으로 순회 가능한 객체를 나타내는 프로토콜이다. for of 반복문, ... 전개 연산자, 구조 분해 등과 같이..