1.数组去重的方法

方法一:

双重for循环完成数组去重

                每次循环 是 当前循环单元 和 之后的所有单元进行比较

                如果 起始单元的数据 和 之后单元的数据 相同 删除 之后单元的数据

                1,  外层循环 从第一个单元 至 倒数第二个单元

                2,  内层循环 从 当前循环起始单元的下一个单元 至 最后一个单元

                3,  如果 当前循环起始单元存储的数据 和 之后循环单元存储的数据相同

                    删除 之后循环的单元

代码如下:

假设数组如下所示

var arr = [1, 2, 3, 1, 5, 6, 4, 5, 6, 5, 8, 4, 6, 5, 4, 6, 5, 4, 1, 1, 6, 6, 4, 5, 1, 5, 4, 1, 5, 3, 5, 4, 5, 6,

            4, 1, 4, 6, 5, 5, 6, 4, 1, 6, 5, 4, 5, 6

        ]

        arr.sort(function (a, b) {

            return (a - b)

        })

        for (var i = 0; i <= arr.length - 2; i++) {

            for (var j = 1; j <= arr.length - 1; j++) {

                if (arr[i] === arr[i + 1]) {

                    arr.splice(i + 1, 1)

                }

                if (arr[j] === arr[j + 1]) {

                    arr.splice(j + 1, 1)

                }

            }

        }

        console.log(arr)

方法二:

利用对象不能存储重复属性的特点(对象属性数组去重)

        1.创建一个空对象 创建一个空数组

        2,.循环遍历数组

            将 数组单元的数据 作为 对象的属性 新增对象的单元

            存储的数据是任意什么数据都可以

        3.循环遍历对象 将 对象的属性作为数据 存储到空数组中

           数组.push()

代码如下:

假设数组如下:

var arr = [1, 2, 3, 1, 5, 6, 4, 5, 6, 5, 8, 4, 6, 5, 4, 6, 5, 4, 1, 1, 6, 6, 4, 5, 1, 5, 4, 1, 5, 3, 5, 4, 5, 6,

            4, 1, 4, 6, 5, 5, 6, 4, 1, 6, 5, 4, 5, 6

        ]

        arr.sort(function (a, b) {

            return (a - b)

        })

        var obj = {}

        var arr1 = []

        for (var i = 0; i <= arr.length - 1; i++) {

            console.log(arr[i])

            obj[arr[i]] = arr[i]

        }

        console.log(obj)

        for (var key in obj) {

            console.log(key)

            // console.log(obj[key])

            arr1.push(obj[key])

        }

        console.log(arr1)

看完了点个关注吧!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值