Javascript 了解如何将.forEach转换为.map

Javascript 了解如何将.forEach转换为.map,javascript,lodash,ecmascript-5,Javascript,Lodash,Ecmascript 5,我正在与lodash v3合作一个项目。我有eslint插件loadash设置来使用v3建议 查看下面的代码,建议将其从.forEach转换为.mapinventory.minons()是一个对象数组 var playeramies=[setupPlayer]; _.forEach(inventory.minions(),函数(){ playerArmies.push(设置子命令); }); 在查阅了\uuu.map的文档后,我想不出如何将我所拥有的更改为它所建议的。我现在不太担心这样做是否正

我正在与lodash v3合作一个项目。我有eslint插件loadash设置来使用v3建议

查看下面的代码,建议将其从
.forEach
转换为
.map
inventory.minons()
是一个对象数组

var playeramies=[setupPlayer];
_.forEach(inventory.minions(),函数(){
playerArmies.push(设置子命令);
});

在查阅了
\uuu.map
的文档后,我想不出如何将我所拥有的更改为它所建议的。我现在不太担心这样做是否正确(因为我缺乏理解,所以我是一个门楣的奴隶),而只是试图扩展我的知识,希望它能帮助我理解未来的文档。

因为数组中有一个初始值,
.map
不会保留该项。 您必须使用
.unshift
将项目
setupPlayer
添加到数组的开头

var playerArmies = _.map(inventory.minions(), function () {
  return setupSubCommander;
});
playerArmies.unshift(setupPlayer); // adds item to the front of the array.

由于数组中有一个初始值,
\uu.map
不会保留该项。 您必须使用
.unshift
将项目
setupPlayer
添加到数组的开头

var playerArmies = _.map(inventory.minions(), function () {
  return setupSubCommander;
});
playerArmies.unshift(setupPlayer); // adds item to the front of the array.

setupsubcander
来自何处?您似乎在寻找
[setupPlayer].concat(u.repeat(setupsubcander,inventory.minions().length))
@Bergi它是其他地方使用的函数的名称。同样适用于
setupPlayer
setupsubcander
来自何处?您似乎正在寻找
[setupPlayer].concat(u.repeat(setupsubcander,inventory.minions().length))
@Bergi它是其他地方使用的函数的名称。同样适用于
setupPlayer
@Quitch no,javascript没有操作重载,抓到我的忍者删除:D@Quitch要使用这些值,您必须有一个新值。@Quitch no,javascript没有操作重载,捕获我的忍者删除:D@Quitch要使用这些值,必须有一个新值。