数组去重

普通数组去重

引入underscore.js 

_.uniq([1, 2, 1, 3, 1, 4]);

=> [1, 2, 3, 4]

json数组

obj2key(obj, keys) {

var n = keys.length,

    key = [];

  while (n--) {

key.push(obj[keys[n]]);

  }

return key.join('|');

}

uniqeByKeys(array, keys) {

var arr = [];

  var hash = {};

  for (var i =0, j = array.length; i < j; i++) {

var k =this.obj2key(array[i], keys);

    if (!(kin hash)) {

hash[k] =true;

      arr.push(array[i]);

    }

}

return arr;

}

var arr = [{rid:1,name:'李白'},{rid:2,name:'张三'},{rid:1,name:'赵云'},{rid:1,name:'李四'}]

this.uniqeByKeys(arr, ['rid']);

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 2019.08.02补:对象数组建议直接循环然后使用工具库(lodash)的深比较,评论里也有指出,文章的方法有些...
    始悔不悟阅读 61,247评论 13 26
  • #数组去重方法 var a = [1111,1112,1113,1111122,1113,1112,1113,11...
    Sachie阅读 2,860评论 0 2
  • 方法一(通过indexOf,返回该数组下表) 方法二(通过sort从小到大排序,然后遍历数组比较相邻元素是否相等)...
    他在发呆阅读 1,540评论 0 0
  • 李尚龙的《你只是看起来很努力》在出版后掀起一阵热销狂潮,犀利的笔锋的确骂醒了不少人。认识到了自己只是看起...
    简约Dr阅读 3,666评论 0 6
  • 2011年8月12日 星期五 宝贝今天满29天。上午我们带你去打预防针。 妈咪一个月没有出门,乘坐电梯时竟然有点头...
    薄荷林子阅读 3,564评论 0 9

友情链接更多精彩内容