將水果數(shù)組中同類的水果合并為一條并求出總數(shù)
var fruits = [{  name: 'apple',  value: 1}, {  name: 'apple',  value: 2}, // 總計(jì)3個蘋果{  name: 'banana',  value: 2}, {  name: 'banana',  value: 3}]; // 總計(jì)5個香蕉var fruitTotal = []; // 存最終數(shù)據(jù)結(jié)果// 數(shù)據(jù)按照水果名稱進(jìn)行歸類var nameContainer = {}; // 針對鍵name進(jìn)行歸類的容器fruits.forEach(item => {  nameContainer[item.name] = nameContainer[item.name] || [];  nameContainer[item.name].push(item);});console.log(nameContainer); // 按照水果名稱歸類完成:{ apple: Array(2), banana: Array(2) }// 統(tǒng)計(jì)不同種類水果的數(shù)量var fruitName = Object.keys(nameContainer); // 獲取水果種類:["apple", "banana"]fruitName.forEach(nameItem => {  let count = 0;  nameContainer[nameItem].forEach(item => {    count += item.value; // 遍歷每種水果中包含的條目計(jì)算總數(shù)  });  fruitTotal.push({'name': nameItem, 'total': count});});console.log(fruitTotal);// 輸出結(jié)果:// [{ name: "apple", total: 3 },// { name: "banana", total: 5 }]總結(jié)
以上所述是小編給大家介紹的JS數(shù)組實(shí)現(xiàn)分類統(tǒng)計(jì)實(shí)例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對VeVb武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答