js数组去重方法

55 阅读1分钟

1.arr.filter方法

 var arr = [2, 3, 4, 5, 4, 4, 4, 5, 3, 2, 4, 3, 5, 6, 10, 4, 3, 6, 7,]
        function uniquearr(a) {

            var emptyarr= a.filter((item, index,self) => {
                return self.indexOf(item)===index
            })

            return emptyarr
        }
        arr = uniquearr(arr)
        console.log(arr)

2.for循环+arr.indexOf方法

var arr = [2,3,4,5, 4, 4, 4, 5, 3, 2, 4, 3, 5, 6, 10, 4, 3, 6, 7,]
        function uniquearr(a) {
            var emptyarr = []
            for (let i = 0; i < a.length; i++) {
                if (emptyarr.indexOf(a[i]) === -1) {
                    emptyarr.push(a[i])
                }
            }
            return emptyarr
        }
        arr = uniquearr(arr)
        console.log(arr)

3.双重for循环+arr.splice方法

 var arr = [1, 4, 4, 4, 5, 3, 2, 4, 3, 5, 6, 10, 4, 3, 6, 7,]
        function uniquearr(a) {
            for (let i = 0; i < a.length; i++) {
                for (let j = i + 1; j < a.length; j++) {
                    if (a[i] === a[j]) {
                        a.splice(j, 1)
                        j--
                    }
                }

            }
            return a
        }
        arr=uniquearr(arr)
        console.log(arr)