首页 > 编程语言 > 详细

js数组元素为基本类型和对象去重

时间:2021-08-20 21:23:21      阅读:28      评论:0      收藏:0      [点我收藏+]

常见的数组去重主要有俩方面:

  1. 由基本类型组成的数组去重
  2. 由对象组成的数组根据对象某个属性去重

基本类型去重:

export function unique(array) {
  const arr = []
  const contain = {}
  array.forEach(item => {
    if (!contain.hasOwnProperty(item)) {
      arr.push(item)
      contain[item] = true
    }
  })
  return arr
}

 效果:

技术分享图片

 

根据对象属性去重:

/**
 * 
 * @param {Array} array 
 * @param {string} key ,对象属性名
 * @returns {Array}
 */
export function uniqueByAttr(array, key) {
  const hash = {};
  const arr = array.reduce((preVal, curVal) => {
    hash[curVal[key]]
      ? ""
      : (hash[curVal[key]] = true && preVal.push(curVal));
    return preVal;
  }, []);
  return arr;
}

效果:

技术分享图片

 

 

脚踏实地行,海阔天空飞

 

js数组元素为基本类型和对象去重

原文:https://www.cnblogs.com/coder--wang/p/15167690.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!