帮助了 AmazingCounters.com 位小伙伴

js 数组去重

数组去重


<script>

    var arr = [1, 1, 2, 1, '2', '1', 3, 3, 7, 6, 8, 6, 9, 4, 1, 7, 4, 9]

    // 先遍历一组数组,把数组中所有的元素取出来

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

        // 把该元素的后面的元素取出来做对比

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

            // 循环判断当前元素和后面的每一个元素是否相等

            if (arr[i] == arr[j]) {

                // 如果相等,证明了出现了相同的元素,就要删除后面的元素j

                arr.splice(j, 1);

                //  当删除了当前j所在元素的位置后,后面的元素自动补位,自动补位的位置可能和删除的元素相同!

                //  所以我需要在比较一次删除的位置,让j--  只要满足了两个数相等,就会删除后面的数,

                //  删除了后再来比较一次这个位置的数

                j--;

                // 只有删除了一个元素后,才会减减

            }

        }

    }

    console.log(arr)

</script>

答案:

Array(8)

0: 1

1: 2

2: 3

3: 7

4: 6

5: 8

6: 9

7: 4

length: 8

原文链接:https://www.jianshu.com/p/5a7d75863558

posted on 2020-01-09 09:01  云的旋律  阅读(211)  评论(0编辑  收藏  举报

导航

前端攻城狮分享群