0: {v_type: "EM", total_project_depreciated_value: 35652.17, listInfo: Array(3)} 1: {v_type: "EMB", total_project_depreciated_value: 1666.67, listInfo: Array(3)} 2: {v_type: "FA", total_project_depreciated_value: 41902.259999999995, listInfo: Array(5)} 3: {v_type: "FE", total_project_depreciated_value: 1987, listInfo: Array(8)} 4: {v_type: "HR_FUND", total_project_depreciated_value: 86.26, listInfo: Array(8)} 5: {v_type: "HR_INSURANCE", total_project_depreciated_value: 274.93, listInfo: Array(8)} 6: {v_type: "HR_SALARY", total_project_depreciated_value: 19400, listInfo: Array(8)}对listInfo中project_depreciated_value求和
时间: 2024-03-02 12:51:48 浏览: 117
Secrecy_fDroid_DEPRECIATED:此 repo 已折旧,因为原始 repo 已包含此处的所有特殊功能
可以使用数组的 reduce() 方法来对 listInfo 中的 project_depreciated_value 进行求和,具体实现如下:
```javascript
// 假设 data 是包含上述数据的数组
let sum = data.reduce((total, item) => {
// 判断 item 是否有 listInfo 属性
if (item.listInfo) {
// 对 listInfo 中的 project_depreciated_value 进行求和
let listSum = item.listInfo.reduce((listTotal, listItem) => {
return listTotal + listItem.project_depreciated_value;
}, 0);
return total + listSum;
} else {
return total;
}
}, 0);
```
解释一下上述代码:
1. 使用 reduce() 方法对 data 数组进行迭代,初始值为 0。
2. 判断当前迭代的元素是否有 listInfo 属性,如果没有则直接返回总和。
3. 如果有 listInfo 属性,则使用 reduce() 方法对 listInfo 数组进行迭代,初始值为 0。
4. 在 listInfo 的迭代中,使用回调函数对 project_depreciated_value 进行求和,并返回总和。
5. 在 data 的迭代中,将 listInfo 的总和加到总数上,最终得到所有 listInfo 中 project_depreciated_value 的总和。
6. 最后输出求和结果:
```javascript
console.log(sum);
```
这样就可以对 listInfo 中的 project_depreciated_value 进行求和了。
阅读全文