目錄 一、方法一:(使用for循環) 二、方法二:(使用reduce方法) 三、方法三:(使用forEach方法) 附:js實現對象數組去重及數據疊加 總結 怎么實現數組的每一個值進行累加呢?我只
目錄
- 一、方法一:(使用for循環)
- 二、方法二:(使用reduce方法)
- 三、方法三:(使用forEach方法)
- 附:js實現對象數組去重及數據疊加
- 總結
怎么實現數組的每一個值進行累加呢?我只想到了三種方法,比較基礎,也比較常用的,如果還有其他方法可以傳授一下給我,謝謝!
一、方法一:(使用for循環)
// 1.定義一個數組 var oldArray = [1,2,3,4,5,6,7]; // 2.定義一個初始值 0 let 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數組內值累加內容請搜索技圈網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持技圈網!
【感謝: 龍石數據大數據分析平臺技術支撐 http://www.longshidata.com/pages/government.html, 】聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。