let list = [
{name:"1000积分",serialNumber:6},
{name:"500积分",serialNumber:7},
{name:"50积分",serialNumber:8},
{name:"50积分",serialNumber:8},
{name:"50积分",serialNumber:8} ];
怎么把list数组转化为
[
{title:"1000积分",num:1},
{title:"500积分",num:1},
{title:"50积分",num:3}
]
//num:serialNumber相同的元素重复次数
let _res = [];
for(let i = 0; i < list.length;) {
let count = 0;
for(let j = i; j < list.length; j++) {
if(list[i].serialNumber == list[j].serialNumber) {
count++;
}
}
let obj = {
title:list[i].name,
num:count
}
_res.push(obj)
i += count;
}
console.log(_res)
//[{"title":"1000积分","num":1},{"title":"500积分","num":1},{"title":"50积分","num":3}]
本文介绍了一种将具有重复元素的数组转换为记录每种元素出现次数的新数组的方法。通过遍历原始数组并计数相同元素的出现次数,最终生成了一个包含元素名称和其出现次数的对象数组。
391

被折叠的 条评论
为什么被折叠?



