JavaScript的默认对象表示方式{}可以视为其他语言中的Map或Dictionary的数据结构,即一组键值对。但是JavaScript的对象有个小问题,就是键必须是字符串。但实际上Number或者其他数据类型作为键也是非常合理的。
举个例子:
let m = {1:3,2:4};
console.log(m);
console.log(m['1']);
输出如下:
{ '1': 3, '2': 4 }
3
可以看到JavaScript帮我们把数字转成string了,这是我们不想看到的,那我们如何解决这个问题呢?这个时候就要用到Map对象了。
举个例子:
let mm = new Map();
mm.set(1,3);
mm.set(2,4);
console.log(mm);
console.log(mm.get(1));
console.log(mm.get('1'));
输出如下:
Map(2) { 1 => 3, 2 => 4 }
3
undefined
可以看到使用Map之后我们可以设置key为整数了。
以上就是node js Map对象的一些问题了。