JS (Java Script)

Set 자료형

GABOJOK 2023. 9. 14. 12:24

Set 자료형 

중복자료를 허용하지 않는  "값" 만을 모아놓은 특별한 "컬렉션" 이다.

 

  • iterable 한 객체를 전달받으면 (대부분 "배열을 전달받는다") 그 안의 값을 복사해서 Set 에 넣어준다. 
  • .add()를 통해  Set 자료에 값을 추가 할 수 있는데 추가한 뒤에 Set 자신을 반환한다. 

 

let check2 = new Set(['나나', '정국', '가희', '나나']);
console.log(check2);   //Set(3) {'나나', '정국', '가희'}

//Set 자료에 값 추가하기
check2.add('고은') 
console.log(check2 );   //Set(4) {'나나', '정국', '가희', '고은}

//Set 자료에 값 제거하기
check2.delete('고은')   //true

//Set 자료에 값 있는지 확인하기
check2.has('나나')   //true

//Set 자료에 값 몇개 저장되어 있는가?
console.log(check2.size)  //3

위 예제에서 보다싶이

.delete는 값을 제거하는 친구인데, 

호출 시점에 값이 있어서 제거에 성공하면 true를 리턴, 아니라면  false를 리턴한다. 

 

 

array 자료를 Set 으로 변환하고, 또 Set 자료를 array 로 변환 할 수 있다.  (feat. spread operator 이용)

let check = ['하늬', '하이', '가희', '하늬'];
let check3 = new Set(check);    //배열에 중복값 제거를 위해 Set 자료형에 넣어줌.
check = [...check3];   //중복값 제거한거 다시 배열로 변환하기.__ spread operator 이용.
console.log(check);   //(3) ['하늬', '하이', '가희']

 

또한

iterator 가 내장되어 있음으로 forEach, for~of 반복문이 가능하다. 

 

 

출처 : https://velog.io/@youngminss/JS-Map-Set-%EC%9E%90%EB%A3%8C%ED%98%95

 

[JS] Map & Set 자료형

객체(Object) or 배열(Array) 로도 많은 작업을 할 수 있지만, 현실 세계를 반영하기에, 더욱 효과적인 자료형을 JS에서도 제공한다.그 중 맵(Map) 과 셋(Set) 자료형을 알아본다.다른 건 몰라도 개발을

velog.io