js的tree数组对象扁平化思否_js 中的tree型数组如何去重与合并?
假设数据是这样的,不难发现,其中父级roleCode有重复的,子级roleCode也有重复的,如何做到把重复的去掉,同时,又可以把不重复的合并到一起呢?
testTreeData: [
{
roleCode: 'staff',
roleNameCn: '员工',
children: [
{
roleCode: 'staff_01',
roleNameCn: '员工_01',
children: [
{
roleCode: 'staff_01_01',
roleNameCn: '员工_01_01'
}
]
}
]
},
{
roleCode: 'staff',
roleNameCn: '员工',
children: [
{
roleCode: 'staff_02',
roleNameCn: '员工_02',
children: [
{
roleCode: 'staff_02_01',
roleNameCn: '员工_02_01'
},
{
roleCode: 'staff_02_02',
roleNameCn: '员工_02_02'
}
]
}
]
},
{
roleCode: 'staff',
roleNameCn: '员工',
children: [
{
roleCode: 'staff_02',
roleNameCn: '员工_02',
children: [
{
roleCode: 'staff_webank_02_03',
roleNameCn: '员工_02_03'
},
{
roleCode: 'staff_webank_02_04',
roleNameCn: '员工_02_04'
}
]
}
]
},
{
roleCode: 'aaaaaaaa',
roleNameCn: '员工aaa'
},
{
roleCode: 'bbbbbbbb',
roleNameCn: '员工bbb'
}
]`
js的tree数组对象扁平化思否_js 中的tree型数组如何去重与合并?相关推荐
- js的tree数组对象扁平化思否_JS专题之数组展开
前言 首先什么是数组展开? 假如现在有这样一个需求:将后台的一个多重 List 数据,展开成一个 List 后,并去重后排序: ["a", "b", [&quo ...
- JavaScript数组的扁平化:将 2D JavaScript 二维数组转换为 1D 一维数组(多种方法)
推荐阅读: js对象扁平化:_南北极之间的博客-CSDN博客_js扁平化js对象扁平化的方法:1.使用 concat() 方法在2. 使用 flat() 方法3.使用用户定义的函数此示例将设置一个包含 ...
- 字符串对象转数组对象_js对象转数组的方法 js怎么将数组对象转变成字符串
只需要一句,arr.__proto__=[];但是要注意浏览器支持__proto__才行,最新的浏览器应该都支持. 以下两种都可以解决此问题: function transform(obj){ var ...
- JavaScript 对象扁平化
JavaScript对象扁平化 我们平时肯定遇到过多层嵌套的对象,name如何将它扁平化呢?一起来看看吧! 函数封装如下: function flatten (obj) {const ans = {} ...
- 【js两个数组对象根据属性相同的值合并】
js两个数组对象根据属性相同的值合并 数组对象 合并方法 数组对象 const a=[{uid: 1,name: '黄鹤楼'},{uid: 2,name: '鹳雀楼'},{uid: 3,name: ' ...
- 我知道的JavaScript--Json对象扁平化
引子: 在Asp.net mvc 框架下用Ajax方法提交一个复杂的Json 对象到Action方法上, 会出现一些问题,这里我们用Javascript 的方式去解决这个问题,在asp.net mvc ...
- JSON——Json对象扁平化
一个层级结构很深的json对象 下面的代码是JSON扁平化的帮助类: 声明: 由于层级的json对象中名字可能会有重复,所有扁平化时key值带上了父级的key 使用一个key的list列表,来判断是否 ...
- 递归实现数组的扁平化
数组扁平化即将多维数组转化为一维数组: 例: [1,2,3,4,5,[2,3,4,[6,10]]]==>[1,2,3,4,5,2,3,4,6,10]: 实现数组扁平化的方法有好几种,在这里只说一 ...
- Java对象扁平化的操作
// 此处使用lombok @Data public class User {private String name;private Wife wife;private List<Childre ...
最新文章
- Vue.js 实践(2):实现多条件筛选、搜索、排序及分页的表格功能
- ssdp协议_Cotopaxi:使用指定IoT网络协议对IoT设备进行安全测试
- linux自动挂载windows磁盘
- The 6 richest people in the world
- Linux下常用操作汇总
- 现代程序设计 作业1
- android gradle教程,Android Gradle入门
- VMware虚拟机安装Windows XP学习教程
- 2019/7/31随笔
- 虾皮物流好不好SLS 异常件怎么处理?
- 家庭网关——开启数字家庭的钥匙
- PowerShell yarn : 无法加载文件 C:\Users\Admin\AppData\Roaming\npm\yarn.ps1,因为在此系统因为在此系统上禁止运行脚本。
- 小米温湿度计接入homeassistant
- mysql无法打开excel_关于Navicat将Excel数据导入到MySQL中出现无法打开文件错误
- nginx error_log 日志配置
- 机器人领域相关英文期刊
- 开源库 Gson 怎么读
- 数智赋能跨境国际物流暨WallTech沃行信息十周年庆典圆满落幕
- facebook app
- 《C++Primer 中文第四版》 笔记
热门文章
- C++ 设计模式 —— 控制器设计模式(实现功能模块间通信)
- 机器学习基础(二)——词集模型(SOW)和词袋模型(BOW)
- 贝叶斯分析——从数值积分到MCMC
- mysql 分段解析_MYSQL分段统计
- c mysql清理日志文件_MySQL 一般查询日志或者慢查询日志历史数据的清理
- java控制台五子棋游戏
- python 下载文件-python爬虫之下载文件的方式总结以及程序实例
- python是什么-Python 是什么
- 0基础学python要多久-零基础零经验自学Python,到精通Python要多久啊?
- python练手经典100例-Python入门练手100例