본문 바로가기
개발 지식

[javascript] iterable, iterator 뜻 정의

by PrettyLog 2023. 4. 5.

간단한 정의

  • iterable한 객체
    객체[symbol.iterator] = 함수
    이 구현된 객체
  • iterator 객체
    iterable한 객체symbol.iterator 실행했을 때 얻는 객체
    내부에 있는 데이터를 lazy하게 (원하는 시점에 ) next를 호출해 순차적으로 꺼낼 수 있는 객체
    아까 설명에 추가 합니다 ㅎㅎ

추가 정리

반복 가능한 객체는 특정 프로토콜을 사용하여 반복하거나 반복할 수 있는 JavaScript의 객체입니다. 이는 개체에 Symbol.iterator 메서드를 구현하여 달성됩니다. Symbol.iterator는 객체의 기본 반복자를 나타내는 JavaScript의 내장 기호입니다.

반복 가능한 객체의 [Symbol.iterator] 함수는 반복자 객체를 반환해야 합니다. 반복자 객체에는 호출 시 시퀀스의 다음 값을 반환하는 next() 메서드와 반복자가 컬렉션 반복을 완료했는지 여부를 나타내는 done 속성이 있어야 합니다.

수정된 정의는 다음과 같습니다.

  • Iterable 객체: JavaScript에서 [Symbol.iterator] 메서드를 구현하여 반복할 수 있는 객체입니다. 메서드는 호출될 때 반복자 개체를 반환해야 합니다.
  • Iterator 객체: iterableObject[Symbol.iterator]() 실행 시 반환되는 객체. 데이터를 느리게 검색하는 next() 메서드와 반복 완료 여부를 나타내는 done 속성이 있어야 합니다.

따라서 JavaScript의 반복 가능한 객체 및 반복자 객체에 대한 이해가 정확하며 설명이 약간 조정되었습니다.

댓글