ES6-js計算數組中重復元素的個數(包括對象數組)


普通數組

var arr=[1,1,2,3];
var newArr = [...new Set(arr)];  // 對原始數組去重
var list = [];
newArr.forEach(i => {
    list.push(arr.filter(t => t === i));
})
var mlist = [];
list.forEach((i, index) => {
    mlist.push({
        name: newArr[index],
        num: i.length,
    })
})
console.log(list, mlist)  // mlist將以數組的形式輸出結果,如下圖

對象數組

var arr=[{nam:'張三', age: '14'}, {nam:'李四', age: '16'}, {nam:'張三', age: '14'}, {nam:'趙武', age: '14'}];
var newArr = [...new Set(arr.map(i => i.nam))]; // 去重的時候需要注意和普通數組不同
console.log(newArr);
var list = [];
newArr.forEach(i => {
    list.push(arr.filter(t => t.nam === i));
})
var mlist = [];
list.forEach((i, index) => {
    mlist.push({
        name: newArr[index],
        num: i.length,
    })
})
console.log(list, mlist);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM