在实际开发中经常会遇到判断数组中是否有id重复的元素,下面提供方法,供参考:
function checkRepeat(arr) {
var array = [];
arr.forEach((item) => {
if (item) {
array.push(item.id);
}
});
if((new Set(array)).size != arr.length){
console.log("数组有重复值");
return true;
}
return false;
}
调用一下
var arr = [{id:1,v:1},{id:1,v:2},{id:2,v:3}];
checkRepeat(arr);
结果:
数组有重复值 true;
1. 数组去重
function unique (arr) {
return Array.from(new Set(arr))
}
调用下
var arr = [1,1,2];
unique (arr)
结果:
[1,2]
2. 判断一个元素在数组中出现的次数
function arrCheck(arr){
var newArr = [];
for(var i=0;i<arr.length;i++){
var temp=arr[i];
var count=0;
for(var j=0;j<arr.length;j++){
if(arr[j]==temp){
count++;
arr[j]=-1;
}
}
if(temp != -1){
newArr.push(count)
}
}
return newArr;
}
调用
var arr = [1,1,1,2,2];
arrCheck (arr)
结果:
[3,2]