请你扮演一个资深的前端开发工程师,帮我写一个根据一组数组中的id值匹配另一个数组套对象,对象的id值,如果匹配上了将所有的id和所有的中文添加到新的数组中,最后再将新的数组中的所有中文放在另一个新的数组中
时间: 2023-07-16 10:16:12 浏览: 42
好的,首先我们需要明确一下需求,假设我们有两个数组,一个是id数组,一个是包含多个对象的数组,每个对象都有一个id属性和一个中文属性。我们需要根据id数组中的值,在包含多个对象的数组中找到对应的对象,并将所有的id和中文添加到一个新的数组中,最后将所有中文放在另一个新的数组中。
那么我们可以按照以下步骤来实现:
1. 遍历id数组,拿到每一个id值
2. 遍历包含多个对象的数组,使用find方法找到id值匹配的对象
3. 如果匹配成功,将该对象的id和中文属性添加到一个新的数组中
4. 遍历新的数组,将所有中文属性放在另一个新的数组中
代码实现如下:
```javascript
// 假设我们有以下两个数组
const idArray = [1, 3, 5];
const objectArray = [
{ id: 1, name: 'Apple' },
{ id: 2, name: 'Orange' },
{ id: 3, name: 'Banana' },
{ id: 4, name: 'Grape' },
{ id: 5, name: 'Pineapple' }
];
// 新建一个空数组,用于存储匹配成功的对象的id和中文属性
let resultArray = [];
// 遍历id数组,拿到每一个id值
idArray.forEach(id => {
// 使用find方法找到id值匹配的对象
const matchedObj = objectArray.find(obj => obj.id === id);
// 如果匹配成功,将该对象的id和中文属性添加到resultArray中
if (matchedObj) {
resultArray.push({ id: matchedObj.id, name: matchedObj.name });
}
});
// 新建一个空数组,用于存储所有中文属性
let nameArray = [];
// 遍历resultArray,将所有中文属性放在nameArray中
resultArray.forEach(obj => nameArray.push(obj.name));
// 输出结果
console.log(resultArray); // [{ id: 1, name: 'Apple' }, { id: 3, name: 'Banana' }, { id: 5, name: 'Pineapple' }]
console.log(nameArray); // ['Apple', 'Banana', 'Pineapple']
```
希望这个代码能够满足你的需求。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)