직접 구현한 집합(Set) 클래스에서는 각 요소에 대해 특정 작업을 수행할 수 있도록 forEach 함수를 만들 수 있습니다. 이 함수는 콜백(callback)을 매개변수로 받아, 집합에 포함된 모든 요소마다 해당 콜백을 호출하는 방식으로 동작합니다.
아래 예제를 통해 이러한 함수를 어떻게 구현하는지 살펴보겠습니다.
구현 예제
forEach(callback) {
for (let prop in this.container) {
callback(prop);
}
}이렇게 구현한 forEach 메서드는 다음과 같이 테스트해 볼 수 있습니다.
사용 예제
const testSet = new MySet();
testSet.add(1);
testSet.add(2);
testSet.add(5);
testSet.forEach(elem => console.log(`요소: ${elem}`));실행 결과
위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.
요소: 1 요소: 2 요소: 5
참고로, ES6에서 표준으로 도입된 Set 객체 역시 동일한 기능을 제공하는 내장 forEach 메서드를 지원합니다. 따라서 직접 구현한 집합 클래스뿐만 아니라 표준 Set 객체에서도 같은 방식으로 요소를 순회하며 원하는 작업을 처리할 수 있습니다.