>  기사  >  웹 프론트엔드  >  ES6의 WeakSet에 대한 간략한 소개

ES6의 WeakSet에 대한 간략한 소개

不言
不言앞으로
2018-11-14 16:23:062980검색

이 기사는 ES6의 WeakSet에 대한 간략한 소개를 제공합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

Overview

WeakSet은 Set과 유사하지만 몇 가지 차이점이 있습니다.

WeakSet은 임의의 값이 아닌 객체만 저장할 수 있습니다

# 🎜🎜#WeakSet은 반복 가능하지 않습니다

WeakSet은 약한 참조입니다. 즉, WeakSet의 값을 참조하는 변수가 없으면 쉽게 재활용할 수 있습니다

초기화

 new WeakSet([iterable]);
#🎜 🎜#객체만 저장할 수 있기 때문에 여기서는 객체 배열 같은 것만 전달하면 되는 것 같아요

Object array

new WeakSet([{name:1},{name:2}]) //WeakSet(2){{name:1},{name:2}}

Add# 🎜🎜#

let weakset=new WeakSet()
weakset.add({num:1})
weakset.add({num:2})
#🎜 🎜#이미 존재하는지 판단
let data={num:1}
let weakset=new WeakSet()
weakset.add(data)
weakset.add({num:2})
weakset.has(data) //true
weakset.has({num:2}) //false

Delete

let data={num:1}
let weakset=new WeakSet()
weakset.add(data)
weakset.add({num:2})
weakset.delete(data) //true
weakset.delete({num:2}) //false

약한 참조 기능

let weakset=new WeakSet([{num:1}])
setTimeout(()=>console.log(weakset),3000)
// 3s 后输出,可以看到,数据没了
WeakSet {}

#🎜 🎜#

위 내용은 ES6의 WeakSet에 대한 간략한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제