👋 WeakSet 오브젝트 개요, new WeakSet(), has(), add(), delete()
1. WeakSet 오브젝트
- 
Set오브젝트와 차이- 오브젝트만 
value값으로 사용할 수 있음 number등의 프리미티브 타입 사용 불가
 - 오브젝트만 
 - 
개념은
WeakMap과 같음value만 작성하는 것이 다름value의 참조가 바뀌면GC대상
 - 
지원 메소드
has(),add(),delete()
 
2. new WeakSet()
WeakSet인스턴스 생성, 반환- 
파라미터
- 대괄호 
[ ]안에 오브젝트 작성 
const empty = new WeakSet(); const sports = {}; const obj = new WeakSet([ sports ]}; // 1. 파라미터를 작성하지 않아도 됨 // 2. new 연산자를 사용 함 - 대괄호 
 
3. has()
- 
WeakSet인스턴스에서value의 존재 여부 반환- 존재하면 
true, 아니면false반환 
const fn = () => {}; const obj = new WeakSet([ fn ]}; console.log(obj.has(fn)); // true - 존재하면 
 
4. add()
- 
WeakSet인스턴스에value설정- 파라미터에 
value로 설정될 오브젝트 작성 
const obj = new WeakSet(); const fn = () => {}; obj.add(fn); console.log(obj.has(fn)); // true - 파라미터에 
 
5. delete()
- 
WeakSet인스턴스에서value와 일치하는 엘리먼트 삭제- 삭제 성공이면 
true반환 - 삭제를 실패하면 
false반환 
const fn = () => {}; const obj = new WeakSet([fn]); console.log(obj.delete(fn)); // true console.log(obj.has(fn)); // false - 삭제 성공이면