iterable 객체

YOUNGJOO-YOON·2021년 10월 2일
0

JavaScript

목록 보기
4/25

iterable을 사용하는 곳은 생각보다 많다.

일반적으로 JS의 array 객체를 많이 사용하지만 Map과 Set이라는 자료형이 존재한다.

array(list), Map, Set은 각각이 모두 iterable 한 객체이다.


let ary = [1, 2, 3];
let ite = ary[Symbol.iterator]();
ite.next(); // {value: 1, done: false}

// Map

let map = new Map();
map.set(1,'one');
map.set(2,'two');
let iteMap = map[Symbol.iterator]();
iteMap.next(); // { value: [ 1, 'one' ], done: false }

// Set

let set = new Set();
set.add(1);
set.add(2);
let iteSet = set[Symbol.iterator]();
iteSet.next(); // {value: 1, done: false}
  
  

이런식으로 ary가 array 객체로 선언된 그 순간부터 iterator는 prototype에 의해 iterable한 객체로 정의되어진다.

profile
이 블로그의 글은 제 생각을 정리한 글과 인터넷 어딘가에서 배운 것을 정리한 글입니다. 출처는 되도록 남기도록 하겠습니다. 수정 및 건의 오류 등이 있으면 언제든지 댓글 부탁드립니다.

0개의 댓글