为什么这段代码:
let a = {};
let m = new Map(a);
给我错误:
code.0.0.128.js:33943 Uncaught TypeError: undefined is not a function
at new Map (native)
at http://localhost:/code.0.0.128.js:33943:26
at exports.default (http://localhost:/code.0.0.128.js:34006:7)
at combination (http://localhost:/code.0.0.128.js:28672:30)
at i (<anonymous>:1:14471)
at u (<anonymous>:1:14757)
at <anonymous>:1:17652
at Object.dispatch (http://localhost:/code.0.0.128.js:28238:23)
at dispatch (<anonymous>:1:18094)
at http://localhost:/code.0.0.128.js:29398:17
如果我试试这个,我没有得到任何错误:
let m = new Map();
答案 0 :(得分:0)
a
需要是一个数组中具有键值结构的数组,或者映射到
[
[key, value],
[key, value],
]
来自Map
:
Map
对象是一个简单的键/值映射。任何值(对象和原始值)都可以用作键或值。<强>语法强>
new Map([iterable])
参数
- 迭代
Iterable是一个Array或其他可迭代对象,其元素是键值对(2元素数组)。每个键值对都会添加到
new Map
。null
被视为未定义。