-
Javascript ES6 Set,WeakSet 유니크한 배열 만들기Javascript (ES6) 2020. 7. 29. 21:46
// Set : 중복없이 유일한 값을 저장할려고 할 때 사용(이미 존재하는지 확인할 때 사용) let mySet = new Set(); //Set 생성 let obj0 = {'name': 'Jacob', 'age':30}; mySet.add(obj0); mySet.add('Taxi'); mySet.add('Bus'); mySet.add('Car'); mySet.add('Taxi'); // Taxi는 이미 있기 때문에 추가되지 않는다 mySet.forEach(function(value){ console.log(value); }); console.log(mySet); // {"Taxi", "Bus", "Car"} console.log(mySet.has("Taxi")); // true mySet.delete("Car"); // 삭제 방법 console.log(mySet); // {"Taxi", "Bus"} //WeakSet : 참조를 가지고 있는 객체만 저장이 가능하다. let arr = [1,2,3,4]; let arr2 = [5,6,7,8]; let obj = {arr, arr2}; let ws = new WeakSet(); // WeakSet 생성 ws.add(arr); ws.add(function(){}); ws.add(arr2); ws.add(obj); /* error invalid type 발생 (참조값 없기 때문에 error) ws.add(111); ws.add('test'); */ arr = null; //WeakSet에 추가한 후 arr에 null로 바꾸면 has로 확인 시, false console.log(ws); console.log(ws.has(arr), ws.has(arr2)); //false true /* value: {arr: Array(4), arr2: Array(4)} 1: Array(4) value: (4) [5, 6, 7, 8] 2: Array(4) value: (4) [1, 2, 3, 4] */
유니크한(유일한) 값을 가진 배열 만들 때 사용하는 Set
참조값을 가지는 유니크한 배열을 만들 때 사용하는 WeakSet
'Javascript (ES6)' 카테고리의 다른 글
Javascript ES6 Tagged Template literals (0) 2020.08.03 Javascript ES6 Map,WeakMap key/value 구조 (0) 2020.07.30 Javascript ES6 Destructuring 디스트럭처링 (분해하기) (0) 2020.07.25 Javascript ES6 From 메소드 (배열로 만들어주기) (0) 2020.07.25 Javascript ES6 Array spread operator 배열 펼치기 (0) 2020.07.25