数组 复杂去重 代码实例
时间: 2023-06-28 20:15:32 浏览: 106
JS数组中对象去重操作示例
对于一些复杂的数组结构,如多维数组或对象数组,我们可以使用更加复杂的去重方法。
以下是一些基于多维数组和对象数组的去重方法的代码实例:
1. 多维数组去重
```javascript
let arr = [[1, 2], [2, 3], [1, 2]];
let uniqueArr = [];
for (let i = 0; i < arr.length; i++) {
let isExist = false;
for (let j = 0; j < uniqueArr.length; j++) {
if (JSON.stringify(uniqueArr[j]) === JSON.stringify(arr[i])) {
isExist = true;
break;
}
}
if (!isExist) {
uniqueArr.push(arr[i]);
}
}
console.log(uniqueArr); // [[1, 2], [2, 3]]
```
2. 对象数组去重
```javascript
let arr = [
{ id: 1, name: 'Tom' },
{ id: 2, name: 'Jerry' },
{ id: 1, name: 'Tom' }
];
let uniqueArr = [];
let obj = {};
for (let i = 0; i < arr.length; i++) {
if (!obj[arr[i].id]) {
uniqueArr.push(arr[i]);
obj[arr[i].id] = true;
}
}
console.log(uniqueArr); // [{ id: 1, name: 'Tom' }, { id: 2, name: 'Jerry' }]
```
以上代码实例分别基于多维数组和对象数组实现了去重,当然还有其他的方式可以实现数组的复杂去重,具体取决于具体的场景和需求。
阅读全文