龙空技术网

JavaScript数组去重

做个爱美的姑娘 146

前言:

而今姐妹们对“js函数数组去重”大体比较珍视,小伙伴们都需要知道一些“js函数数组去重”的相关内容。那么小编在网络上网罗了一些有关“js函数数组去重””的相关知识,希望姐妹们能喜欢,我们一起来了解一下吧!

时间复杂度:执行当前算法所消耗的时间空间复杂度:执行当前算法需要占用多少内存空间使用双重循环(时间和空间复杂度比较高)

function deduplication(array) {    let arr = [...array];    for (let i = 0; i < arr.length; i++) {        for (let j = i + 1; j < arr.length; j++) {            if (arr[i] == a[j]) {                arr.splice(j, 1);                i--;                j--;            }        }    }    return arr;}console.log(deduplication(a));// [1,2,3,4,5]
利用对象的属性是唯一的
let arr = [1, 2, 3, 4, 5, 1, 2];function deduplication(arr) {    let obj = {},        p = [];    for (let i = 0; i < arr.length; i++) {        if (!obj[arr[i]]) {            obj[arr[i]] = true;            p.push(arr[i]);        }    }    return p;}console.log(deduplication(arr)); // [1,2,3,4,5]
ES6(最简洁)
let a = [1, 2, 3, 4, 5, 1, 2];let b = [...new Set(a)];console.log(b); // [1,2,3,4,5]console.log(Array.from(new Set(a))); // [1,2,3,4,5]

还有更多的方法,但举一反三,能够牢记三种就好,面试的时候想起三种也是不错的。

标签: #js函数数组去重