获取数组Javascript中数组的约简

时间:2019-03-30 01:35:42

标签: javascript arrays function ecmascript-6

我正在尝试将packings数组中的sku数组的总数获取。我已经map探查并reduce d了这个数组,但是它给了我一个undefined的输出。

sku: [
  {
    id:1,
    value:0,
    packings: [
      {
        id: 1,
        cost: 0,
        code:'',
        pieces: 0,
        size:0,
        total:0
       },
    ],
  },
],

这是我的代码:

let result = this.sku
    .map ( (obj,index) => {
        parseFloat(obj.packings.total);
        console.log(obj.packings.total)
    })
    .reduce( (total,current) => {
        total+current;
    }) 

return this.fixFourDecimal(result);

请注意,skupackings是动态的,用户可以在一个packings中添加/乘以sku,也可以添加许多sku

1 个答案:

答案 0 :(得分:2)

如果您在箭头函数{}中使用花括号=>,它不会让您隐式返回-您必须使用return关键字或重构函数:

let result = this.sku
  .map((obj, index) => {
    console.log(obj.packings.total);
    return parseFloat(obj.packings.total);
  })
  .reduce((total, current) => total + current);