【发布时间】:2018-05-12 14:21:21
【问题描述】:
如果我在任何控制台中运行下面的代码,我们可以看到有一个键(在下面显示的示例中为 0,1,2),我不明白为什么。
我们似乎有两个键:这是自动生成的一个和您手动设置的键(在示例中。
我想知道为什么会这样。
let mapTesting = new Map([
[1, 'String'],
[2, 123],
[true, 'Testing']
]);
console.log(mapTesting)
//Output:
Map
size: 3
<entries>
0: 1 → "String"
<key>: 1
<value>: "String"
1: 2 → 123
<key>: 2
<value>: 123
2: true → "Testing"
<key>: true
<value>: "Testing"
__proto__: Object { … }
【问题讨论】:
-
这些不只是迭代的索引吗?
-
@pinkfloydx33 我真的不知道,我正在学习 JS。这是我的第一周。 :)
-
@PabloDeLuca
Map可以迭代,这些只是迭代的索引。在进入新的闪亮的 ES6+ 东西之前,你应该真正了解更基本的东西。 -
为什么如果我在控制台中打印的对象具有基于它的属性的相同键或标识符? (0, 1, 2...)。而且对象不是可迭代对象
标签: javascript dictionary collections key