Thi*_*man 5 javascript ecmascript-6
为了"映射"一个Map对象,你必须首先将它解构为一个数组数组.这似乎是我的倒退.
有人可以向我解释一下这背后的设计理由是什么吗?我知道像Scala这样的其他语言确实有地图的地图方法,所以我试图理解为什么它们在Javascript中不可用.
这种语法似乎是不必要的复杂和冗长:
let mappedMap = new Map(
[...originalMap]
.map(([k, v]) => [k * 2, '_' + v])
);
Run Code Online (Sandbox Code Playgroud)
难道不是这样的吗?
let mappedMap = originalMap.map((k, v) => [k * 2, '_' + v]);
Run Code Online (Sandbox Code Playgroud)
小智 0
ES6 上的 Map 目前表示为具有键/值系统的可迭代对象。数组映射函数返回一个新数组。我不确定是否可以通过这种方式返回新版本。我会使用 forEach 来创建地图,并从那里构建新的地图。如果有的话,如果你可以构建一个具有相同功能的函数,我也绝对建议你研究一下 immutable.js
| 归档时间: |
|
| 查看次数: |
149 次 |
| 最近记录: |