前端:集合对象中如何获取对象中某个属性的计算值
·
通过浏览器控制台添加对象集合,可以看出里面有三个对象,现在我想对他们的num属性进行相加应该怎么操作
var names=[{name:"zs",num:12},{name:"ww",num:12},{name:"ls",num:23}]

通过reduce方法进行操作
names.reduce((n1,n2)=>n1+n2.num,0)
Vue中的用法:
在vue的computed计算属性中定义一个方法通过集合的reduce方法进行计算返回数据.
其中括号里面的(c1,c2)是集合的对象,其中c1一开始的值是我们定义的0,所以第一次运算是0+集合下标为0的.num的值,第二次运算是把0+集合下标为0的.num的值当成c1对象的值,c2对象就会集合中下一个对象的num+之前的c1值,以此往后算出集合所有的num值
computed:{
total(){
return this.selected.reduce((c1,c2)=>c1+c2.num,0)
}
}
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)