es6两组两维数组,去除相同id的,合并成一个数组
时间: 2023-06-03 08:02:25 浏览: 135
没有问题,我可以帮您解决这个问题。您需要使用ES6中的数组方法来实现这个功能。首先,您可以使用Array.from()方法将两个数组合并成一个数组,然后使用ES6中的Set对象去除相同的id。最后,您可以使用Array.from()方法将Set对象转换为数组。以下是一个代码示例:
```
const arr1 = [[1, 'a'], [2, 'b'], [3, 'c']];
const arr2 = [[2, 'd'], [3, 'e'], [4, 'f']];
const mergedArray = Array.from(new Set([...arr1, ...arr2].map(item => item[0]))).map(id => {
const [arr1Item] = arr1.find(item => item[0] === id) || [];
const [arr2Item] = arr2.find(item => item[0] === id) || [];
return [id, arr1Item ? arr1Item[1] : arr2Item[1]];
});
console.log(mergedArray); // Output: [[1,'a'], [2,'b'], [3,'c'], [4,'f']]
```
以上代码首先将两个数组合并成一个数组,然后使用.map()方法从合并后的数组中取出id,并使用Set对象去除重复的id。接下来,使用.map()方法将不同数组中id相同的项合并成一个数组项。最后,将Set对象转换为数组并输出结果。希望这个示例可以帮到您。
阅读全文