企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[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" } // ] ~~~