js 多维度数组对象取交集
时间: 2023-10-10 18:06:04 浏览: 105
JavaScript获取多个数组的交集
可以使用双重循环遍历多维度数组对象,找到其中的交集元素,然后将其存储到一个新的数组对象中返回。
以下是一个示例代码:
```javascript
function intersect(arr1, arr2) {
let result = [];
for (let i = 0; i < arr1.length; i++) {
for (let j = 0; j < arr2.length; j++) {
if (JSON.stringify(arr1[i]) === JSON.stringify(arr2[j])) {
result.push(arr1[i]);
}
}
}
return result;
}
let arr1 = [{x: 1, y: 2}, {x: 2, y: 3}, {x: 3, y: 4}];
let arr2 = [{x: 2, y: 3}, {x: 3, y: 4}, {x: 4, y: 5}];
console.log(intersect(arr1, arr2));
// Output: [{x: 2, y: 3}, {x: 3, y: 4}]
```
在上面的示例代码中,我们定义了一个 `intersect` 函数,它接受两个多维度数组对象 `arr1` 和 `arr2` 作为参数。函数内部使用双重循环遍历这两个数组对象,找到它们的交集元素,并将这些元素存储到一个新的数组对象 `result` 中返回。在比较两个元素是否相等时,我们使用了 `JSON.stringify()` 方法将它们转换为字符串进行比较。
阅读全文