您的位置:首页技术文章
文章详情页

JS实现数组内值累加常见的3个方法

【字号: 日期:2022-06-13 08:20:12浏览:2作者:猪猪
目录一、方法一:(使用for循环)二、方法二:(使用reduce方法)三、方法三:(使用forEach方法)附:js实现对象数组去重及数据叠加总结

怎么实现数组的每一个值进行累加呢?我只想到了三种方法,比较基础,也比较常用的,如果还有其他方法可以传授一下给我,谢谢!

一、方法一:(使用for循环)// 1.定义一个数组var oldArray = [1,2,3,4,5,6,7]; // 2.定义一个初始值 0let result = 0; // 2.for循环遍历,累加for(let i = 0; i<oldArray.length;i++){ result += oldArray[i]} console.log(result,'result') //28 result二、方法二:(使用reduce方法)// 1.定义一个数组var oldArray = [1,2,3,4,5,6,7]; // 2.定义一个新的变量接收值let result = oldArray.reduce((a,b)=>{ return a + b;}) // 3.打印console.log(result,'result') // 28 result三、方法三:(使用forEach方法)// 1.定义一个数组var oldArray = [1,2,3,4,5,6,7]; // 2.定义一个变量let result = 0; // 3.使用forEach()循环遍历和方法一类似oldArray.forEach((item)=>{ result += item}) // // 3.打印console.log(result,'result')

以上是我想到的比较常用且实用的方法!

附:js实现对象数组去重及数据叠加

HTML

<template> <div><div v-for='item in list'> id:{{item.id}} - count:{{item.count}}</div><br /><div>点击按钮去重,count叠加</div><button @click='getData'>去重</button> </div></template>

JavaScript

<script>export default { name: 'app', data(){return { list: [{ id: 0, count: 2,},{ id: 1, count: 2,},{ id: 2, count: 2,},{ id: 3, count: 2,},{ id: 0, count: 2,},{ id: 2, count: 2,}, ]} }, methods: {getData(){ let listFilter = this.list // 定义map方法 const res = new Map(); // 过滤器过滤listFilter this.list = listFilter.filter((item) => {// res收集第一次存在的元素,如果存在,查看存在的位置,对list中的count进行叠加if(res.has(item.id)){ for(let [key,value] of res){if(key==item.id){ this.list[key].count += item.count} }}// 如果不存在,则添加到res中return !res.has(item.id) && res.set(item.id, 1) });} }}</script>总结

到此这篇关于JS实现数组内值累加常见的3个方法的文章就介绍到这了,更多相关JS数组内值累加内容请搜索好吧啦网以前的文章或继续浏览下面的相关文章希望大家以后多多支持好吧啦网!

标签: JavaScript