我需要在 js 中创建一个字典,其键是二维的整数数组,比如这种:
D = {};
var p1 = [0, 0];
var p2 = [1, 2];
D[p1] = 1;
D[p2] = 2;
但是这样创建字典以后,我发现如果想取出某个键对应的值的话,比如
var val = D[p1];
这时 val 的值是 undefined. 想请教大家,如何能够让二维的整数数组能够成为字典的键值?
1
noe132 2018-11-18 20:23:13 +08:00 via Android 1
使用 map。
let map = new Map() |
2
mathzhaoliang OP @noe132 Map() 和 {} 有什么区别吗?
|
3
bestie 2018-11-18 21:16:31 +08:00
|
4
noe132 2018-11-18 21:24:06 +08:00 1
普通对象的键只能是字符串
非字符串的值会被隐式转换为字符串 也就是 D[[0, 0]]等价与 D[[0, 0].toString()] 也就是 D["0,0"] 要让对象类型作为键,就需要用 Map. |
5
horizon 2018-11-18 22:06:10 +08:00
楼上说的对。。
|
6
c9y 2018-11-19 17:30:51 +08:00 via Android
楼上说的对。
|