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

js数组对象去重

时间:2020-11-23 11:48:27      阅读:12      评论:0      收藏:0      [点我收藏+]

标签:对象   cti   function   ret   长度   unique   ie8   es6   元素   

// 兼容ie8 不会改变原数组
function deWeight(arr) {
  for (var i = 0; i < arr.length - 1; i++) {
      for (var j = i + 1; j < arr.length; j++) {
          if (arr[i].name== arr[j].name) { // name为需要去重字段
              arr.splice(j, 1);
              //因为数组长度减小1,所以直接 j++ 会漏掉一个元素,所以要 j--
              j--;
          }
      }
  }
  return arr
}
// 兼容ie8 会改变原数组
function deWeight() {
    for (var i = 0; i < arr.length - 1; i++) {
        for (var j = i + 1; j < arr.length; j++) {
            if (arr[i].name == arr[j].name) {
                arr.splice(j, 1);
                //因为数组长度减小1,所以直接 j++ 会漏掉一个元素,所以要 j--
                j--;
            }
        }
    }
    return arr;
}
// 不兼容ie8 es6 reduce
arr = arr.reduce(function(item, next) {
       obj[next.key] ? ‘‘ : obj[next.key] = true && item.push(next);
       return item;
}, []);
// es6 set去重
function unique10 (arr) {
  return Array.from(new Set(arr))
}

js数组对象去重

标签:对象   cti   function   ret   长度   unique   ie8   es6   元素   

原文地址:https://www.cnblogs.com/dcyd/p/13998476.html

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