对数组中的对象某个属性相加求和
例如:
fjData:[
{ fileName: 'aaaaaaa.doc', url: 'http://www.baidu.com/aaaaaaa.doc', size: 123456789 },
{ fileName: 'bbbbbbb.xls', url: 'http://www.baidu.com/bbbbbbb.xls', size: 6554412 },
{ fileName: 'ccccccc.ppt', url: 'http://www.baidu.com/ccccccc.ppt', size: 85145531 },
对上面数组中对象的size进行求和
let arr = fjData.reduce((arr, size) => { return arr + size.fileSize }, 0)
console.log('大小', arr)
得到的arr就是求出的总和
数组定义:简而言之就是一组有序的数据集合,其索引为从0开始且自然增长的整数,其元素值可以是任何js数据!并且包含一个名为length的属性,该属性表示数组元素的个数!
一、定义数组,有三种定义方式:
var arr=new Array();
arr[0]=“11”;
arr[1]=“22”;
arr[2]=“33”;
var arr=new Array(“11”,“22”,“33”);
var arr=[“11”,“22”,“33”];
二、数组的length属性,可以获取数组的长度,也可以截取,清空数组,如果设置的值比其当前值小,数组将被截断,
用lodash解决数组中对象属性的累加及合并前言案例
我工作的过程中,遇到一个场景。循环调用同一个接口,然后需要对返回的结果做聚合操作,将每个对象中的属性都累加起来。对应的Value是个数字。此时,我想到了用lodash去处理。
const source = {
count:{
countOne:{
B:100,
countTwo:33,
vegetabl
公元2021年10月25日,天气:晴!终于晴了!
工作的第十一天,今天有点闲哈哈哈。所以用空跟大家分享一些简单的技术(复杂的我也不会哈哈哈)。。。
今天分享的是比如有两个数组,数组中的元素是对象,那么怎么实现每个元素的属性值相加呢?
* // returns 266
* var arr = [
* {yu: 113, shu: 123, wai: 115, wu: 75, hua: 90, sheng: 100},
* {yu: 123, shu: 143, wai: 123, wu: 90, hua: 100, sheng: 100}
* arr.sum(i
// 使用reduce()方法对num属性进行求和
var sum = arr.reduce(function(total, currentValue) {
return total + currentValue.num;
}, 0);
// 输出总和
console.log(sum);
这段代码中,首先定义了一个包含数字的数组对象`arr`,然后使用`reduce()`方法对`num`属性进行求和,最后将结果输出到控制台。在`reduce()`方法中,`total`表示累加器的值,`currentValue`表示当前元素的值,`0`表示初始值。在每一次迭代中,`total`的值等于上一次迭代返回的值,`currentValue`表示当前元素的值,`total + currentValue.num`表示将`total`和当前元素的`num`属性值相加得到的结果。最终得到的`sum`即为数组对象中`num`属性值的总和。