JS - Set 객체
JS의 객체 중 [값] 형태로 값을 담을 수 있는 Set 객체에 대한 메모
Set 객체
Map
과 유사하지만 키를 저장하지 않고, 값 value에 대해서만 저장하는 객체이며 대괄호 [] 를 1회만 사용하는 객체이다.
const setObj1 = new Set();
const setObj2 = new Set(["test", 1, true, "aredra", () => {}]);
for (let item of setObj2) {
console.log(item);
}
// test
// 1
// true
// aredra
// () => {}
Map과의 차이
- 값에 대해서만 저장한다.
key
가 없어 값 하나만 구할 수가 없다.- 값에 대한 중복을 체크한다.
Methods
has, keys, delete
메소드와 forEach
의 콜백함수에서는 value
값을 key
로 사용하여 값을 찾게 된다.
메소드 | 파라미터 | 반환타입 | 기능 |
---|---|---|---|
add() |
value |
인스턴스 |
순서대로 값 추가 |
has() |
value |
boolean |
해당 하는 값의 존재여부 확인 |
entries() |
- |
Iterartor Object |
인스턴스 순서대로 Iterartor Object로 반환 |
keys() |
- |
Iterartor Object |
인스턴스 값를 순서대로 Iterartor Object로 반환 |
values() |
- |
Iterartor Object |
인스턴스 값을 순서대로 Iterartor Object로 반환 |
Symbol.iterator() |
- |
Iterartor Object |
values() 와 동일 |
forEach() |
callback[, this object] |
undefined |
callback 함수 인자로 value, key, 인스턴스 순 전달 |
delete() |
key |
boolean |
삭제 할 경우 true, 없으면 false |
clear() |
- |
- |
Set 객체 삭제 X, 모든 entry 삭제 |