js数组元素为基本类型和对象的去重
2021-08-20 18:28
676 查看
常见的数组去重主要有俩方面:
- 由基本类型组成的数组去重
- 由对象组成的数组根据对象某个属性去重
基本类型去重:
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笔记(一)_JS基本类型、数组和对象基本概念和方法
- js总结(一):javascript的类型:基本类型、对象和数组
- JS 将变量 转化为字符串的方法, 适用于所有类型,数组, JSON对象,函数和基本类型等
- JS 将变量 转化为字符串的方法, 适用于所有类型,数组, 对象,函数和基本类型等
- js:给定两个数组,如何判断他们的相对应下标的元素类型是一样的
- js-对象、数组等类型的判断
- JS中的常量(基本数据类型)和内置对象
- 判断数据类型,判断是否空对象,js判断是不是数组
- js获取对象、数组的实际长度,元素实际个数
- JAVA IO分析二:字节数组流、基本数据&对象类型的数据流、打印流
- JS根据数组中对象的时间依据相同的类型分组
- JS的数据类型、常量、变量、以及基本对象的知识总结
- JAVA面向对象-----值交换(基本数据类型 数组类型 对象的值 字符串的)
- JS中的常量(基本数据类型)和内置对象
- 为什么我只改了JS数组中的一个对象的元素的值,其他对象的元素值都跟着变了
- JS 数据基本类型和引用类型的区别,检测及对象的拷贝
- js学习第一天-----基本类型数组及常见的内置函数
- js数组的基本用法及数组根据下标(数值或字符)移除元素
- js数组循环删除元素或对象
- js基本类型、对象的各自比较