Map查询

let map = new Map();
map.set({key: '这是key'}, {value: '这是value'});
console.log(map);

let keyObject = {key: "这是key"};
map.set(keyObject);
// undefined
// 查不到,怎么会?才刚刚存进去?

原因在于:存进去的key和查询的key虽然看起来一样,但是在内存当中的引用位置是不同的,所以对于map来说,这是两个不同的对象。

结果应该是如下图所写:

先定义一个变量:不管是存还是取,均用同一个对象即可

Q.E.D.


I thrive to be a creator of things.