资讯专栏INFORMATION COLUMN

es6基础0x014:WeakMap

luzhuqun / 676人阅读

摘要:概述和使用上类似,在特性上和类似,和相比,有一下特点不可枚举的只能是对象是弱引用,内的如果没有引用,将会被垃圾回收机制回收初始化添加删除包含弱引用特性后输出一下内容,数据消失了

0x000 概述

WeakMapMap使用上类似,在特性上和Set类似,和Map相比,有一下特点

不可枚举

WeakMapkey只能是对象

WeakMap是弱引用,WeakMap内的key如果没有引用,将会被垃圾回收机制回收

0x001 初始化
new WeakMap([[{},1]])
0x002 添加
let weakmap=new WeakMap()
weakmap.add({},"1")
weakmap.add({num:1},()=>{})
0x003 删除
let obj={}
let weakmap=new WeakMap()
weakmap.add(obj,"1")
weakmap.add({},"2")
weakmap.delete(obj) //true
weakmap.delete({}) //false
0x004 包含
let obj={}
let weakmap=new WeakMap()
weakmap.add(obj,"1")
weakmap.has(obj)//true
weakmap.has({})//false
0x005 弱引用特性
let weakmap=new WeakMap([[{},1]])
setTimeout(()=>{console.log(weakmap)},3000)
// 3s后输出一下内容,数据消失了
WeakMap {}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/99247.html

相关文章

  • ES6 - WeakMap

    Set有对应的WeakSet, Map也有WeakMap。这一篇,我们就来学习一下WeakMap有写什么特性。先来看一下WeakMap的基本特性: 1: WeakMap是一种存储多个键值对的无序列表 2: WeakMap的键必须是非null的对象类型 3: WeakMap的键对应的值,可以是任意类型 接下来看一下WeakMap的接口方法:一:WeakMap的新建与初始化与Map相同的,WeakM...

    Youngdze 评论0 收藏0
  • ES6 系列之 WeakMap

    摘要:一个对象若只被弱引用所引用,则被认为是不可访问或弱可访问的,并因此可能在任何时刻被回收。也就是说,一旦不再需要,里面的键名对象和所对应的键值对会自动消失,不用手动删除引用。如果有错误或者不严谨的地方,请务必给予指正,十分感谢。 前言 我们先从 WeakMap 的特性说起,然后聊聊 WeakMap 的一些应用场景。 特性 1. WeakMap 只接受对象作为键名 const map = ...

    CollinPeng 评论0 收藏0
  • 数据结构-栈

    摘要:栈是另外一种数据结构,类似于数组,但是在添加或删除数据时更加灵活。栈数据结构栈是一种后进先出的数据结构。这种情况下,可以直接通过修改来修改栈中的数据,这是无法避免的。 前言 数组是 JS 中最常用的数据结构,它可以在任意位置添加或删除数据。栈是另外一种数据结构,类似于数组,但是在添加或删除数据时更加灵活。 栈数据结构 栈是一种 后进先出(LIFO) 的数据结构。新添加或待删除的元素都保...

    zhoutk 评论0 收藏0
  • 解读 webconponents.js 中对 ES6 WeakMap 的 shim (一)

    摘要:中对的要求主要是对非对象仅保留弱引用,且取值是复杂度,这导致了它的两个特性不能求大小,更不能枚举。按说这种关乎内存管理的对象是没法的。但是对有一个很奇妙的。在中的每一个中设置一个属性属性名是的唯一。值为该在中对应的。同时取值也是复杂度的。 ES6 中对 WeakMap 的要求主要是对 key(非 null 对象) 仅保留弱引用,且取值是 O(1) 复杂度,这导致了它的两个特性: 不...

    Imfan 评论0 收藏0
  • React入门0x014: Fragment

    摘要:只有一个属性,那就是栗子可展开收缩的表格源码展开收起张三我很开心李四我也很开心王五我比张三和李四更开心效果 0x001 引出问题 让我们先来看一个栗子: class App extends React.Component { render() { return ( ) } } Reac...

    forrest23 评论0 收藏0

发表评论

0条评论

luzhuqun

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<