gpt4 book ai didi

javascript - ReactJS:帮助调试?每个数组非列的总和

转载 作者:行者123 更新时间:2023-12-02 02:26:31 26 4
gpt4 key购买 nike

需要帮助了解如何获取多个数组的总和。

这是我从console.log输出的数据:

(4) [empty, Array(1), Array(1), Array(4)]
1: [50, 30]
2: [100, 100, 50]
3: (4) [500, 10, 50, 300]

预期输出:

1: [80] 
2: [250]
3: [860]

使用的方法:

  1. 下面的代码不起作用,它只是每行的列

    const savingsTotal = saveID[0].map((x, idx) => saveID.reduce((sum, curr) => sum + curr[idx], 0));

代码来源:How to calculate the sum of multiple arrays?

  • 这段代码给了我一个奇怪的字符串:

     const savingsTotal = saveID.reduce((sum, value) =>  sum += value, 0)
  • 输出:050100500,10,50,300

  • 我想如果我列出一个可以工作的 key ,例如[已保存:500],但是它也没有工作。

     const savingsTotal = saveID.map(({saved}) => saved.reduce((sum, value) => sum += value, 0))
  • 输出:破坏代码,无法找到 [已保存:500],因为之前的函数是:

      if (save.length > 0 ) { 
    const saveID = save.reduce((savedAmount, { goal_id, saved }) => {
    (savedAmount[goal_id] = savedAmount[goal_id] || []).push({"saved": saved});
    return savedAmount;
    }, []); ****Changed the .push so I would be able to add a key, normally it's without.

    代码来源:How to get a the sum of multiple arrays within an array of objects?

    有人可以帮我理清逻辑吗?

    最佳答案

    通过数组的原始数组进行映射。然后使用reduce来获得它们各自的总和:

    const ar = [[50, 30], [100, 100, 50], [500, 10, 50, 300]];
    const sum_array = ar.map(item => item.reduce((acc, val) => acc + val, 0))
    console.log(sum_array)

    关于javascript - ReactJS:帮助调试?每个数组非列的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65569166/

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