new Set()
let arr = [1,2,3,4,5,61,2,3,4]
const newArr = […new Set(arr)]
filter
let arr = [1,2,3,4,5,61,2,3,4]
let newArr = arr.filter((item, index) => arr.indexOf(item) === index)
for循环 indexof
var arr = [1,9,8,8,7,2,5,3,3,3,2,3,1,4,5,444,55,22];
var newArr=[];
//遍历当前数组
for(var i=0;i<arr.length;i++) {
//如果当前数组的第i已经保存进了临时数组,那么跳过,
//否则把当前项push到临时数组里面
if(newArr.indexOf(arr[i]) === -1) { //indexOf() 判断数组中有没有字符串值,如果没有则返回 -1
newArr.push(arr[i]);
}
}
includes
let arr = [1,2,3,4,5,61,2,3,4]
let newArr = [];
for(i=0; i<arr.length; i++){
if(!newArr.includes(arr[i])){
newArr.push(arr[i])
}
}
JSON数组去重
let arrJson = [{“id”: 0, “name”: “牛肉”},{“id”: 1,“name”: “羊肉”},{“id”: 2, “name”: “牛肉”},{“id”: 3,“name”: “鱼肉”},{ “id”: 4,“name”:“鸡肉”}]
var temp = {}; //用于name判断重复
var result = []; //最后的新数组
arrJson.map(function (item, index) {
console.log(item)
if(!temp[item.name]){
result.push(item);
temp[item.name] = true;
}
});
对象出去空元素
Object.keys(tabelParams).map(key => (!tabelParams[key] ? delete tabelParams[key] : ‘’));