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

 

속성

  1. Set.prototype.add() : 요소 추가
  2. Set.prototype.clear() : Set Object 비우기
  3. Set.prototype..Set() : constructor
  4. Set.prototype.delete('value') : 해당 값 Set에서 삭제
  5. Set.prototype..forEach : 반복문
  6. Set.prototype..entries : map에서의 entries와 동일, 순회할 수 있는 Interator로 반환
  7. Set.prototype..values() : Set내의 value들을 순회할 수 있는 Interator로 반환
  8. Set.prototype..has('value') :해당 값을 가지고 있는 판별 boolean return
  9. Set.prototype.size() : Set 객체 내의 요소의 갯수 return
728x90

+ Recent posts