Set method : new Set()

KoEunseo·2022년 8월 24일
0

파헤쳐보자

목록 보기
7/31

부분집합인지 확인하기 = 중복값 찾아 제거하기

recursive case로 찾아보려 하다가 해도해도 안돼서 구글링...

es6에 newSet이라는 게 생겼다고 한다! 중복값을 없애줌!!
new Set() 메서드를 사용하면 Set이라는 객체가 생긴다.
이 객체를 배열로 만들기 위해 spread 연산자를 사용해서 [...new Set]

Set
자료형에 관계없이 원시 값과 객체 참조 모두 유일한 값을 저장할 수 있다.

let mySet = new Set();
mySet.add(1) //Set {1}
let arr = [1,1,2,3,5,4,6,5]
let test = new Set(arr); //Set(6) {1,2,3,5,4,6}
let test = [...test] //[1,2,3,5,4,6]

(+) 10/06 추가
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set

스터디 도중 Set에 메서드가 아주 다양하게 있다는 것을 알게 되었다!
전에는 그냥 배열에서 중복을 배제하는 Set이라는 메서드가 있구나 하고 말았는데... 신세계임.
Set은 메서드가 아니라 자바스크립트가 내장하고 있는 객체라고 한다.
오호 그래서 new를 앞에 붙였던 것이군,

Set에 대해 제대로 공부하고 자주 써야겠다고 생각하게 된 게, 이 표를 보면서부터다.
그동안 종종 썼던 filter나 reduce, includes 보다 현저하게 빠른 걸 알 수 있다...WoW

Associative는 또 뭐지?
메서드가 아니고 키:값 형태의 객체를 말하는 것 같다. '연관배열' 이라고 한다 함. 사실상 객체를 말하는 듯.
그리고 숫자 키가 아니라 문자열 키가 있는 배열이어야 한다고 함.
Object 예약어를 사용해서 연관 배열을 만든 다음 키, 값을 할당할 수 있음.

var test = new Object();
o["Whose Name"] = 'Seolgi';
o["ID"] = 123;

https://flexiple.com/javascript/associative-array-javascript/

profile
주니어 플러터 개발자의 고군분투기

0개의 댓글