본문 바로가기
CS

이터레이터 패턴이란 무엇인가?

by Shark_상어 2023. 1. 26.
728x90

이터레이터 패턴

이터레이터 패턴(iterator pattern)은 이터레이터(iterator)를 사용하여 컬렉션(collection)의 요소들에 접근하는 디자인 패턴이다.

순회 할수 있는 여러 가지 자료형의 구조와는 상관 없이 이터레이터라는 하나의 인터페이스로 순회가 가능하다.

const mp = new Map();
mp.set('a', 1);
mp.set('b', 2);
mp.set('c', 3);

const st = new Set();

st.add(1);
st.add(2);
st.add(3);

for (let a of mp) console.log(a);
for (let b of mp) console.log(b);

/*
['a', 1]
['b', 2]
['c', 3]

1
2
3
*/

분명히 다른 자료구조인 set 과 map임에도 똑같이 for a of b라는 이터레이터 프로토콜을 통해 순회 하는것을 볼수 있다.

이터레이터 프로토콜: 이터러블한 객체들을 순회할 때 쓰이는 규칙

이터러블한 객체: 반복 가능한 객체로 배열을 일반화한 객체

728x90

'CS' 카테고리의 다른 글

MVP 패턴 과 MVVM 패턴  (0) 2023.01.31
MVC 패턴이란??  (0) 2023.01.28
프록시 패턴 과 프록시 서버  (0) 2023.01.24
옵저버 패턴  (0) 2023.01.23
전략 패턴  (0) 2023.01.21