이터러블과 이터레이터 프로토콜에 대해

oversleep·2025년 1월 24일
post-thumbnail

이터러블(Iterable)과 이터레이터(Iterator) 프로토콜은 자바스크립트에서 데이터를 순회(iterate)하는 방법을 정의하는 프로토콜임.

  1. 이터러블(Iterable):

    이터러블은 [Symbol.iterator] 메서드를 구현하거나 프로토콜을 따르는 객체임.

    이 메서드는 이터레이터를 반환하며, 이터레이터는 순회 가능한(iterable) 객체임.

    이터러블은 주로 배열, 문자열, 맵, 셋과 같이 순회 가능한 데이터 구조를 말함.

  2. 이터레이터(Iterator):

    이터레이터는 { value, done } 형태의 객체를 반환하는 next() 메서드를 가진 객체임.

    value는 현재 이터레이션의 값을 나타내며, done은 이터레이션의 종료 여부를 나타냄.

    이터레이터는 순회 가능한 객체를 한 번에 하나씩 순회하고, 순회 상태를 관리함.

이터러블과 이터레이터 프로토콜을 통해 자바스크립트에서는 순회 가능한 데이터 구조를 일관된 방식으로 순회할 수 있음.

이것을 통해 다양한 데이터 타입에서 순회 동작을 일반화할 수 있음.

이를 통해 배열, 문자열, 맵, 셋 등의 데이터 구조를 동일한 방식으로 다룰 수 있어서 코드를 더 간결하고 유연하게 작성할 수 있음.

profile
궁금한 것, 했던 것, 시행착오 그리고 기억하고 싶은 것들을 기록합니다.

0개의 댓글