【JS】对象数组去重+查重+合并同类项
let arr=[{name:'张三',id:1,arr:['唱歌','跳舞']},{name:'张三',id:1,arr:['吃饭','睡觉']},{name:'李四',id:2,arr:['打球']},]
希望输出这样:
[{ name: '张三', id: 1, arr: [ '唱歌', '跳舞', '吃饭', '睡觉' ] },{ name: '李四', id: 2, arr: [ '打球' ] }
]
let list=[]arr.forEach((item)=>{if(list.length==0){list.push(item)return;}let find=falselist.forEach((j)=>{if(j.id==item.id){find=truej.arr.push(...item.arr)}})if(!find){list.push(item)}
})console.log(list)
感谢小仙女的帮助
她的地址: https://blog.csdn.net/LJJONESEED
【JS】对象数组去重+查重+合并同类项相关推荐
- JS对象数组去重简单有效方法
I.输入 JS对象数组去重是业务经常遇到的方法,稍微简洁一点的方法,如下: var data = [{"id": 1, "name": "李四1&qu ...
- 两个对象数组去重的3种方法
两个对象数组去重的3种方法 前言 问题描述 解决方案一 解决方案二 解决方案三 前言 前段时间写过JavaScript数组去重最简单的 4 种方案,里面的数组元素是基本类型.本文要讲的数组元素是对象, ...
- Js面试题(一)--js实现数组去重怎么实现?
方法1.创建一个新的临时数组来保存数组中已有的元素 方法2.使用哈希表存储已有元素 方法3.使用indexof判断数组元素第一次出现的位置是否为当前位置 方法4.先排序再去重 第一种方法和第三种方法都 ...
- 前端:JS实现数组去重常用的六种方法介绍
今天给大家分享JS实现数组去重常用的六种方法,希望对大家能有所帮助! 定义变量 let arr = [20,6,13,20,100,8,13,11]; let newArr = []; 1.两层循环去 ...
- js对象数组计算总计_如何计算数组中的对象
js对象数组计算总计 Knowing how to quickly iterate through an array and count objects is deceptively simple. ...
- js中数组增删查改unshift、push、pop、shift、slice、indexOf、concat、join
全栈工程师开发手册 (作者:栾鹏) js系列教程1-数组操作全解 js中数组增删查改 代码如下: //元素增加 var names=[]; //定义数组并初始化为空 names = ["小明 ...
- js对象数组根据某一属性查找对象
js对象数组[{name: "zhangsan", age: 20}, {name: "lisi", age: 30}], 如果想查找name是zhangsan ...
- 分享6个对象数组去重的方法
大家好,关于对象数组去重的业务场景,想必大家都遇到过类似的需求吧,针对这样的需求,你是怎么做的呢. 下面我就先和大家讨论下基于对象的某个属性如何去重. 方法一:使用 .filter() 和 .find ...
- vue 对象数组去重
vue 对象数组去重 1.利用set去重 其实很简单,一般的数组去重可以直接用 new Set() 方法即可,但是数组对象的话,比较复杂,不能直接用,我们可以采取间接的方法来去重 对象去重 uniqu ...
最新文章
- ASP.NET中的图片路径问题
- WKWebView不显示提示框(Swift)
- java SSM框架
- 成功解决AttributeError: Unknown property axisbg
- Mybatis学习第一天——Mybatis的安装配置以及基本CURD操作
- ppt科研绘图 图形布尔运算
- linux模拟内存数据落盘,Linux:保证数据安全落盘
- LwIP之netbuf
- oracle中sql语句 日期加减,SQL语句里对日期进行相加减
- 填报true\false和复选框应用及导出打印显示复
- Hexo框架下用NexT(v7.0+)主题美化博客
- excel提取文字拼音首字母
- Eclipse官方汉化Zip包下载地址及安装方式
- Java实现zip文件压缩与解压缩--附完整代码
- 闫令琪图形学入门笔记(光栅化篇)
- 文件关联修复命令ftype用法
- linux设置用户默认桌面背景,linux 修改桌面背景
- 愉快的学习就从翻译开始吧_0-Time Series Forecasting with the Long Short-Term Memory Network in Python
- UltraEdit for Mac 18.00 强大的文本编辑器 中文破解版下载
- String 翻转字符串
热门文章
- 【收集表】欢迎各位来填写查看调查表-安卓手机安装运行谷歌三件套、googleplay调查收集表,便于大家选择收集安装框架及软件...
- Visual Studio中使用Macros插件给代码添加注释、时间和以及自动脚本
- 存储芯片引脚和时序:SRAM(HY6264A系列)
- 识别芯片引脚号的方法
- 频谱分析仪是什么?以及频谱分析仪的应用领域及工作原理
- stomp与veil用法
- 4.28 前端开发日报
- java中unknown source,java - 对于 提示信息为 unknown source的解决办法: jdk 替换jre, 编译时加上debug=true...
- 【数据结构】7-4 病毒感染检测 (15 分)
- Go语言解决go get失败的问题