[TOC]
>[success] # 对象数组多条件去重
~~~
需求:一个'对象数组',根据'id'属性和'name'属性去重。
1. 如果两个对象'id'和'name'都相等就要进行'去重',
2. 如果'id'相等,'name'不相等,不需要去重
3. 如果'name'相等,'id'不相等,不需要去重
~~~
1. index.js
~~~
let dataArr = [
{
id: 1,
name: '名称1'
},
{
id: 2,
name: '名称2'
},
{
id: 2,
name: '名称2'
},
{
id: 2,
name: '名称3'
},
{
id: 3,
name: '名称4'
},
{
id: 4,
name: '名称4'
},
{
id: 5,
name: '名称5'
}
]
let arr1 = []
let arr2 = []
for (let i = 0; i < dataArr.length; i++) {
if (!(arr1.includes(dataArr[i].id + '-' + dataArr[i].name))) { // 1-名称1 / 2-名称2 等等。。。
// 数组中没有就往里添加
arr1.push(dataArr[i].id + '-' + dataArr[i].name)
arr2.push({
id: dataArr[i].id,
name: dataArr[i].name
})
}
}
// console.log(arr2)
// [
// { "id": 1, "name": "名称1" },
// { "id": 2, "name": "名称2" },
// { "id": 2, "name": "名称3" },
// { "id": 3, "name": "名称4" },
// { "id": 4, "name": "名称4" },
// { "id": 5, "name": "名称5" }
// ]
~~~
- vue复选框逻辑
- get请求给后台传数组
- 提交表单时传值参数处理方案
- Element ui上传图片功能
- async和await的使用
- 时间戳转换
- 日期格式转换时间戳
- 时间戳转换日期格式
- 对深拷贝的认知总结
- vue-右键菜单功能
- textarea中换行、回车、空格的识别与处理
- element ui表格合并
- 合并行(上下行)
- 双层for循环
- 数组去重
- 瀑布流
- 前端多条件筛选
- 闭包的理解
- 改变this指向
- vue单选框逻辑
- 对象数组根据某个属性来进行排序
- vscode插件整理
- 对象数组多条件去重
- Blob类型数据转换Json数据类型
- Element ui做批量上传功能
- 前端cookie和后端cookie
- 强制转换https协议
- 给事件传额外参数
- 树形结构数据处理
- 查找所有父级数据
- 根据id筛选单条数据
- 动态引入阿里图标库
- 四舍五入
- 封装一个Promise.allSettled方法
- 判断输入框内是否有emoji表情
- element-ui的popover组件位置偏移
- formData上传文件时,携带【数组对象参数】
- 前端解压压缩包(zip)解压后上传解压的文件
- element ui表格列相同解决办法
- elementUI,table复选框多选,翻页/切换条数时保持选中状态
- cookie 和 token 的区别