第一种方法:
var arr1 = [1, 1,3, 3, 3, 3, 3, 2, 2, 2, 1];
var j = {}
for (i = 0; i < arr1.length; i++) {
var arr2 = arr1[i];
if (j[arr2]) {
j[arr2]++
} else {
j[arr2] = 1;
}
}
console.log(j);
var arrMax = 0;
var arrMost = "";
for (var k in j) {
if (j[k] > arrMax) {
arrMax = j[k];
arrMost = k;
}
}
console.log(arrMost);
console.log(arrMax);
第二种方法:
var arr1 = [1, 2, 3, 3, 1, 3, 2, 3, 3, 3, 1]
function deletArr(arr) {
var res = [];
for (var i = 0; i < arr.length; i++) {
if (res.indexOf(arr[i]) === -1) {
res.push(arr[i])
}
}
return res
}
var arr = deletArr(arr1);
console.log(arr);
//将去重的数组变为对象 key元素 value初始为1
function arrChangeObj(arr) {
//初始化运算结果
var res = {};
for (var i = 0; i < arr.length; i++) {
res[arr[i]] = 1
}
return res;
}
var obj = arrChangeObj(arr);
console.log(obj);
for (var k in obj)
var count = 0;
for (var i = 0; i < arr1.length; i++) {
k=Number(k)
if (arr1[i] === k) {
count++;
obj[k]=count;
}
}
console.log(obj);