var data = [1, 3, 4, 56, 7, 8, 4, 4, 5, 6, 7];
var arr = [];
var arrNew = [];
var obj = {
name: '',
count: ''
}
// 去重
for (var i = data.length; i--;) {
if (arr.indexOf(data[i]) == -1) {
arr.push(data[i]);
}
}
// 获取对应次数
for (var i = 0; i < arr.length; i++) {
var a = 0;
for (var j = 0; j < data.length; j++) {
if (arr[i] == data[j]) {
a = a + 1;
arrNew.push({
name: arr[i],
count: a
});
}
}
}
var arrNew2 = [];
var newArr = []
// 去重=》获取最多的次数
for (var i = arrNew.length; i--;) {
if (arrNew2.indexOf(arrNew[i].name) == -1) {
arrNew2.push(arrNew[i].name)
newArr.push(arrNew[i])
}
}
// 排序 按次数
newArr.sort(function (a, b) {
return a.count < b.count
})
console.log(newArr)
下面是结果:
方法很多,仅供参考