为了账号安全,请及时绑定邮箱和手机立即绑定

ES6中删除key为空的map项

ES6中删除key为空的map项

回首忆惘然 2019-02-20 18:19:24
道上规矩 先上代码let mp = new Map();mp.set({}, 'obj11');mp.set({}, 'obj12');mp.set([], 'obj21');mp.set([], 'obj22');//get testmp.get({})    //undefinedmp.get([])    //undefined//delete test mp.delete({})    //falsemp.delete([])    //false     发现可以设置空的对象和数组 但是都无法取得或者删除,这是怎么回事呢 寻求正确的打开姿势!
查看完整描述

2 回答

?
慕侠2389804

TA贡献1719条经验 获得超6个赞

console.log([] === []) // false

每次都是一个新对象,你要先保留引用


let arr = []

再去 set 和 get 就可以了


查看完整回答
反对 回复 2019-02-25
?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

set() 方法为Map对象添加一个指定键(key)和值(value)的新元素。


var mp = new Map(), a = {}, var b = [];

mp.set(a, 'this is a');

mp.get(a); //"this is a"

mp.set(b, 'this is b');

mp.get(b); //"this is b"

mp.delete(a)//true

mp.delete(b)//true

mp.get(a) //undefined

mp.get(b) //undefined


查看完整回答
反对 回复 2019-02-25
  • 2 回答
  • 0 关注
  • 1713 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信