gpt4 book ai didi

javascript - ECMA6 Spread 在中间使用函数 vs forEach?

转载 作者:太空宇宙 更新时间:2023-11-04 16:18:03 25 4
gpt4 key购买 nike

我有以下代码块,可以正常工作,但我觉得我缺少 ECMA6 简化。

概念代码:

//set.data is an array of objects
service.find().then(set => {
set.data.forEach(function(part, index) {
set.data[index] = itemModificationFunction(set.data[index]);
});
this.items.push(...set.data);
});

var itemModificationFunction = function (data) {
data.addFoo = 'additionalFoo';
return data;
};

...对比。像这样的东西...

service.find().then(set => {
this.items.push(itemModificationFunction(...set.data));
});

...这当然不起作用,因为它只推送第一个数组元素。有没有更干净的方法?

最佳答案

使用map而不是forEach:

service.find().then(set => this.items.push(...set.data.map(modifyItem)));

关于javascript - ECMA6 Spread 在中间使用函数 vs forEach?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40901483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com