码迷,mamicode.com
首页 > 编程语言 > 详细

js数组去重的两种方法

时间:2017-05-25 19:50:00      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:相同   总结   js数组   for   思路   元素   []   ++   第一个   

     数组去重这种问题经常会遇到,解决方法也有很多,这里就总结两种比较常用的方法。

方法一

     第一种方法的思路:遍历数组里的元素,由第一个元素开始依次按照顺序与其后面的元素相比较,如果不同则不用管,相同则把其后所被比较的元素去除。这样所有元素循环一遍,数组中重复的元素就能全部去除。

代码:

<script>

     var arr = [1, 5, 7, 6, 3, 2, 5, 4, 6, 9, 5, 1, 2, 3, 5, 4, 8, 9, 5, 4, 5, 0];
     for (var i = 0; i <= arr.length; i++) {
        for (var j = i + 1; j <= arr.length; j++) {
            if (arr[i] == arr[j]) {
               arr.splice(j, 1);
               j--;
            }
         }
      }
     document.write(arr);

</ script>

方法二

     第二种方法的思路:新建一个空数组,需要去重的数组的每一个元素依次与新建数组的所有元素比较。如果不同就把元素放入新建的数组中,如果相同就不用处理。这样需要去重的数组的所有元素循环一遍,新建的数组即为按要求完成去重后得到的数组。

代码:

<script>

     var arr = [1, 5, 7, 6, 3, 2, 5, 4, 6, 9, 5, 1, 2, 3, 5, 4, 8, 9, 5, 4, 5, 0];
     var arr1 = [];
     for (var i = 0; i <= arr.length; i++) {
         var states = 1;
         for (var j = 0; j <= arr1.length; j++) {
             if (arr[i] == arr1[j]) {
                states = 0;
                break;
             }
          }
         if (states == 1) {
            arr1.push(arr[i]);
         }
       }
      document.write(arr1);

</ script>

js数组去重的两种方法

标签:相同   总结   js数组   for   思路   元素   []   ++   第一个   

原文地址:http://www.cnblogs.com/wcl2017/p/6905443.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!