js reduce 累加数组里对象某个属性的和 NaN
js reduce 累加数组里对象某个属性的和 NaN
var temp = [ { "y": 32 }, { "y": 60 }, { "y": 60 } ];
var reduced = temp.reduce(function(a, b) {return a.y + b.y;
});console.log(reduced); // Prints NaN
原因:写法错误,第一个参数应当作为累加结果,并且赋初值 0
修正方法1
var temp=[{"name":"Agency","y":32,"drilldown":{"name":"Agency","categories":["APPS & SI","ERS"],"data":[24,8]}},{"name":"ER","y":60,"drilldown":{"name":"ER","categories":["APPS & SI","ERS"],"data":[7,53]}},{"name":"Direct","y":60,"drilldown":{"name":"Direct","categories":["APPS & SI","ERS"],"data":[31,29]}}];var reduced = temp.reduce(function (r, a) {return r + a.y;// ^^^ use the last result without property}, 0);
// ^^^ add a start value
console.log(reduced) // r
修正方法2
var temp=[{"name":"Agency","y":32,"drilldown":{"name":"Agency","categories":["APPS & SI","ERS"],"data":[24,8]}},{"name":"ER","y":60,"drilldown":{"name":"ER","categories":["APPS & SI","ERS"],"data":[7,53]}},{"name":"Direct","y":60,"drilldown":{"name":"Direct","categories":["APPS & SI","ERS"],"data":[31,29]}}];var reduced = temp.map(function(obj) { return obj.y; }).reduce(function(a, b) { return a + b; });console.log(reduced);
js reduce 累加数组里对象某个属性的和 NaN相关推荐
- JS总结:数组 字符串 对象
JS总结:数组 字符串 对象 JS中的数据分类: 1)基本数据类型 数据存储在栈区 number, string, boolean, und, null 2)引用数据类型 数据存储在堆区(引用地址 ...
- js循环遍历数组(对象)
js循环遍历数组(对象) 1,for循环 对于循环应该是最常用的一种遍历方式了,通常用来遍历数组结构. let arr = ['a','b','c']; for (let i=0; i<arr. ...
- 递归——函数在内部自己调用自己,那么该函数是递归函数 作用和循环效果一样 要加推出条件return,否则发生栈溢出,导致死循环 递归给数组中对象添加属性 toString()和随机数
递归--函数在内部自己调用自己,那么该函数是递归函数 & 作用和循环效果一样 & 要加推出条件return,否则发生栈溢出,导致死循环 & 递归给数组中对象添加属性 & ...
- 根据数组中对象的属性值排序倒叙
数组中对象的属性值排序倒叙demo function compare(e) {return function (a, b) {var value1 = a[e];var value2 = b[e];r ...
- JS 取Json数据中对象特定属性值
解析JSON JSON 数据 var str = '[{"a": "1","b": "2"}, {"a&quo ...
- java和js中遍历数组和对象的总结
java和js中遍历数组和对象的总结 在这儿写遍历数组和对象,权当复习和总结 1.java中数组的三种初始化方法 ①静态初始化 [java] view plaincopy 1. int[] arr = ...
- js中给数组中对象去重
被问到如何给数组中对象去重,想到set答案肯定错误的,这个平时工作中用到的不多,查阅资料,找到给数组中对象去重的方法,利用对象属性名的唯一性,怪自己当时没想到. 方法一: let ary=[{id: ...
- javascript中对一个对象数组按照对象某个属性进行排序
在javascript中,对象和数组是两种不同的类型,这和php中的数组概念不同.在javascript中,也有一些精妙的算法,用来对一些对象进行排序.我在面试迅雷的时候,也拿到一道题,当时做题的时候 ...
- android两个数组对象去重合并,js 两个数组(对象)去重合并
项目前台代码中需要用到数组的去重操作,其实也不难,就算是对象数组,判断下对应的属性值也是可以实现的,但是如果我实现的话肯定是最常见的双重for循环,加个flag标记,老套的不能行了,想了想,还是上网找 ...
最新文章
- Python培训教程:pycharm常用的快捷键合集
- Mybatis (ParameterType) 如何传递多个不同类型的参数
- 【实用】SAP Call Transaction下钻功能大全
- (一)easyUI之树形网络
- 使用C和汇编实现一个加法操作
- 第2节 mapreduce深入学习:15、reduce端的join算法的实现
- windows查看GPU信息(nvidia-smi)
- 如何从Mac删除Bing重定向
- C++11 decltype
- SpringAop+Mybatis 实现动态切换数据库操作
- Abaqus帮助文档翻译(一)快速介绍有限元
- php时间戳转换英文格式日期_php中时间戳和日期格式的转换
- 信息学奥赛一本通(1097:画矩形)
- 联想笔记本插入耳机仍外放--解决方式
- 1089: 手机短号 (多实例)
- mysql 创建存储过程语法_mysql存储过程语法及实例
- egg 添加 samesite=none, 出现感叹号
- Stream流练习题大全以及答案
- lterator 迭代器 静态属性Symbol.iterator Symbol(Symbol.iterator)
- alipay 证书 java_alipay-sdk-java