道上规矩 先上代码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 就可以了
慕桂英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
添加回答
举报
0/150
提交
取消