欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!
第一种 new Set
 
var fun = function (arr) {
 
return […new Set(arr)];
 
};
 
第二种 new Map
 
  var fun = function (arr) {
 
        let map = new Map();
 
        let res = [];
 
        for (let i = 0; i < arr.length; i++) {
 
            if (!map.has(arr[i])) {
 
               map.set(arr[i], i);
 
               res.push(arr[i]);
 
            }
 
        }
 
        return arr;
 
    };
 
第三种 两层for循环+splice
 
    var fun = function (arr) {
 
        let len = arr.length;
 
        let res = [];
 
        for (let i = 0; i < len; i++) {
 
            for (let j = i + 1; j < len; j++) {
 
                if (arr[i] === arr[j]) {
 
                    arr.splice(j, 1);
 
                    len--;
 
                    j--;
 
                    i--;
 
                }
 
            }
 
        }
 
        return arr;
 
    };
 
第四种 indexOf
 
var fun = function (arr) {
 
let res = [];
 
for (let i = 0; i < arr.length; i++) {
 
if(res.indexOf(arr[i])==-1) {
 
res.push(arr[i])
 
}
 
}
 
return res
 
};
 
第五种 includes
 
var fun = function (arr) {
 
        let res = [];
 
        for (let i = 0; i < arr.length; i++) {
 
            if (!res.includes(arr[i])) {
 
                res.push(arr[i])
 
            }
 
        }
 
        return res
 
};
 
第六种 filter
 
var fun = function (arr) {
 
return arr.filter((item, index) => {
 
return arr.indexOf(item) == index
 
})
 
};

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h64202.shtml