자료구조 & 알고리즘
[JS 자료구조] JS - Set
ahleum
2022. 5. 6. 04:03
Set 객체는 중복되지 않는 유일한 값들의 집합이며 수학적 집합을 구현하기 위한 자료구조이다.
따라서 Set을 통해 교집합, 합집합, 차집합, 여집합 등을 구현할 수 있다
배열과 유사하지만 아래와 같은 차이가 있다.
구분 | 배열 | Set 객체 |
동일한 값을 중복하여 포함할 수 있다 | o | x |
요소 순서에 의미가 있다. | o | x |
인덱스로 요소에 접근할 수 있다. | o | x |
Set 객체의 생성 - new Set(iterable)
– 셋을 만듭니다. 이터러블 객체를 전달받으면(대개 배열을 전달받음) 그 안의 값을 복사해 셋에 넣어줍니다.
요소 개수 확인 - set.size
– 셋에 몇 개의 값이 있는지 세줍니다.
요소 추가 - set.add(value)
– 값을 추가하고 셋 자신을 반환합니다. 셋 내에 동일한 값이 있으면 추가되지 않는다.
요소 삭제 - set.delete(value)
– 값을 제거합니다. 호출 시점에 셋 내에 값이 있어서 제거에 성공하면 true, 아니면 false를 반환합니다.
요소 존재 여부 확인 - set.has(value)
– 셋 내에 값이 존재하면 true, 아니면 false를 반환합니다.
요소 일괄 삭제 - set.clear()
– 셋을 비웁니다.
요소 순회 - set.forEach