JavaScript数组去重的两种原生写法

写法一

var arr = ['刘备', '关羽', '张飞', '曹操', '刘备', '关羽'];
    var arr1 = [];
    /* 遍历数组中的每一个元素 */
    for (var i = 0; i < arr.length; i++) {
      // includes方法判断数组中是否存在该值,存在的话返回true,没有
      if (!arr1.includes(arr[i])) {
        // 不存在的话往新数组里面添加
        arr1.push(arr[i]);
      }
    }
    console.log(arr1);

写法二

var arr = ['刘备', '关羽', '张飞', '曹操', '刘备', '关羽'];
    var arr1 = [];
    for (var i = 0; i < arr.length; i++) {
      // indexOf返回值的索引,如果没有返回的是-1
      if (arr1.indexOf(arr[i]) == -1) {
        // 如果新数组中没有的话就push添加进新数组
        arr1.push(arr[i]);
      }
    }
    console.log(arr1);

猜你喜欢

转载自blog.csdn.net/qq_39177417/article/details/106044411