Set Object
Set object 는 map과 함께 ES6에 새로 도입된 자료구조로, 자료형에 관계 없이 원시 값 (primitive value)과 객체 참조 모두 유일한 값을 저장할 수 있다. Set은 중복을 허용하지 않는 데이터 집합으로 Set을 사용하게 되면 데이터에 빠르게 액세스를 할 수 있다.
Set은 중복을 확인하기 위해서 자동으로 형변환을 해주지 않기 때문에 1 과 "1"은 다른 것으로 처리 된다.
forEah와 for of로 값에 접근이 가능하다.
Set object는 value collection으로 삽인 순서대로 요소를 순회할 수 있다. NaN과 undefined도 Set에 저장할 수 있다. NaN !== NaN이지만, Set내에서는 NaN은 NaN과 같은 것으로 간주한다.
const set = new Set([1,2,3,4,5]);
console.log(set.has(1)); // true
console.log(set.has(6)); // false
구문
new Set( [ iterabled ] );
매개변수
iterable : 반복 가능한 객체가 전달된 경우 그 요소는 모두 새로운 Set에 추가된다. 만약 매개변수를 명시하지 않거나 null을 전달하면, 새로운 Set은 비어 있는 상태가 된다.
반환 값
새로운 Set object
속성
- Set.prototype.add() : 요소 추가
- Set.prototype.clear() : Set Object 비우기
- Set.prototype..Set() : constructor
- Set.prototype.delete('value') : 해당 값 Set에서 삭제
- Set.prototype..forEach : 반복문
- Set.prototype..entries : map에서의 entries와 동일, 순회할 수 있는 Interator로 반환
- Set.prototype..values() : Set내의 value들을 순회할 수 있는 Interator로 반환
- Set.prototype..has('value') :해당 값을 가지고 있는 판별 boolean return
- Set.prototype.size() : Set 객체 내의 요소의 갯수 return
'Language > Javascript' 카테고리의 다른 글
[ Javascript ] Promise (0) | 2022.03.06 |
---|---|
[ Javascript ] Class { ES6 (ES2015) } (0) | 2022.02.20 |
[ Javascript ] Map Object (0) | 2022.01.11 |
[ Javascript ] Array.prototype.includes() (0) | 2022.01.11 |
[ Javascript ] Array.prototype.filter() & filter 메서드 (0) | 2022.01.11 |