Set 객체
- es6 최신 문법의 중복을 제거한 값들의 집합입니다.
- 특정 요소 추가: add
- 특정 요소가 있는지 확인: has (boolean 값으로 반환)
- 특정 요소 제거: delete
- 모든 요소 제거: clear
- 요소의 개수 반환: size (배열의 length)
set 객체 선언
let mySet = new Set();
set 객체 사용법 (MDN 문서 참조)
let mySet = new Set();
mySet.add(1); // Set { 1 }
mySet.add(3); // Set { 1, 3 }
mySet.add(3); // Set { 1, 3 }
mySet.add('text'); // Set { 1, 5, 'text' }
let i = {a: 1, b: 2};
mySet.add(i);
//결과
//Set(4) {1, 3, "text", {…}}
[[Entries]]
0: 1
1: 3
2: "text"
3:
value: {a: 1, b: 2}
mySet.has(1); // true
mySet.has('Text'.toLowerCase()); // true
mySet.has(i); // true
mySet.size; // 4
mySet.delete(3); // set에서 3를 제거함
mySet.has(3); // false, 5가 제거되었음
배열 안에 중복되는 요소 제거
- set 객체는 중복을 허용하지 않아서 요소가 반복되어 나올 경우, 덮어쓰기를 하게 됩니다.
- 자동으로 중복되는 요소가 제거됩니다.
- 배열에서 중복 값을 제거할 때 사용합니다.
const numbers = [1, 2, 3, 1, 4, 5, 6, 4, 5];
console.log([...new Set(numbers)]); //(6) [1, 2, 3, 4, 5, 6]
반응형
'개발 > Javascript' 카테고리의 다른 글
[js] day.js 사용법 (ft. 날짜, 시간 라이브러리, moment.js) (0) | 2021.09.09 |
---|---|
[js] 스크롤 이동, 스크롤 현재 위치 (ft. scrollTop, scrollIntoView) (0) | 2021.09.03 |
[js] null 병합 연산자 '??' (ft. 기본값 매개변수, or 연산자 '||') (0) | 2021.08.30 |
[ts] Property 'x' does not exist on type '{}'.ts (0) | 2021.07.20 |
[js] 현재 날짜, 시간 가져오기(ft. 월, 일, 요일, 시간) (0) | 2021.07.13 |
댓글