如何在JavaScript中对数组对象指定字段求和并获取数组长度
解决方案
前置说明
你原有代码存在属性访问错误:尝试访问的singleData.data.slp.total路径不存在,数组元素没有data层级,正确的访问路径是singleData.slp.total。
功能实现
1. 获取数组总长度
直接读取数组内置的length属性即可:
const arrLength = dataAll.length // 得到的结果为3
2. 对所有slp.total字段的数值求和
使用数组reduce方法遍历累加,注意slp.total是字符串类型,需要先转为数值再参与计算:
const totalSum = dataAll.reduce((sum, currentItem) => { return sum + Number(currentItem.slp.total) }, 0) // 得到的结果为14
完整可运行代码
const dataAll = [ {id: 1, slp: { total: '3' }},{id: 2, slp: { total: '6' }},{id: 3, slp: { total: '5' }} ] // 获取数组长度 const arrLength = dataAll.length // 计算slp.total总和 const totalSum = dataAll.reduce((sum, item) => sum + Number(item.slp.total), 0) console.log('数组总长度:', arrLength) console.log('slp.total求和结果:', totalSum)
内容的提问来源于stack exchange,提问作者longtech
相关产品推荐
相关产品推荐

