많은 프로그래밍 언어에서 그렇듯, JavaScript에도 iterable 객체와 iterator 객체의 개념이 존재한다. 여기서 iterable 객체란 반복 가능한 객체(for ... of 등의 문법을 이용하여 각 요소를 반복할 수 있는 객체)를 의미하며, iterator 객체란 해당 iterable 객체에서 각 요소를 반복하기 위해 사용하는 객체를 의미한다. 일반적으로 [1, 2, 3]과 같이 사용하는 배열 객체가 대표적인 iterable 객체이다. 그리고 여기에 추가로 JavaScript는 유사 배열 객체(Array-like object)라는 개념도 정의하고 있는데, 이는 배열은 아니지만 배열과 유사한 객체를 의미한다. 그렇다면 iterable 객체, iterator 객체, 유사 배열 객체가 정확히 ..