【发布时间】:2021-03-05 05:00:19
【问题描述】:
我有一个 Food 实体,它有一个价格列
在项目的某个地方,我有一系列食物,我想使用reduce() 方法提取它们的价格总和,以使代码更紧凑。但是,我收到错误消息:每个元素的Type 'number' is not assignable to type 'Food' 和The expected type comes from the return type of this signature 是reduce 函数。当我使用 for 循环时这不是问题,但我想使用 reduce 方法使代码更易于阅读。
有没有办法解决这个问题?
【问题讨论】:
-
也许您忘记输入 reduce 的初始值(第二个参数)。如果您分享代码最小可重现示例并在您遇到错误的地方提出问题,我会尽力提供帮助
-
@captain-yossarian
typescript const totalAmount = foods.reduce((food1,food2)=>food1.price+food2.price)错误发生在 food1.price 和 food2.price -
我也可以先使用地图,然后再减少地图价格,但我想知道有没有办法通过一个减少来完成所有这些操作
标签: typescript reduce