js 一个id组成的数组在另一个含有id的对象数组中找出相对应对象获取其中的dx数组值 再组成一个对象
时间: 2024-11-13 21:25:03 浏览: 17
在JavaScript中,如果你有一个包含ID的数组`idsArray`,比如:
```javascript
const idsArray = ['id1', 'id2', 'id3'];
```
并且你有另一个对象数组`objectsArray`,每个对象都有一个`id`属性和其他相关的数据,比如`dx`:
```javascript
const objectsArray = [
{ id: 'id1', dx: 5 },
{ id: 'id4', dx: 10 },
{ id: 'id2', dx: 15 },
];
```
你可以使用`map()`函数结合`findIndex()`或者`filter()`来找到对应ID的对象并获取`dx`值。这里假设如果某个ID在`idsArray`中不存在,返回默认值(如undefined)。以下是代码示例:
```javascript
function getDxByIds(idsArray, objectsArray) {
const result = {};
for (const id of idsArray) {
const index = objectsArray.findIndex(obj => obj.id === id);
if (index !== -1) {
result[id] = objectsArray[index].dx;
} else {
// 如果ID未找到,可以选择忽略、返回默认值或者其他处理方式
console.log(`ID ${id} not found.`);
}
}
return result;
}
const specificObjects = getDxByIds(idsArray, objectsArray);
console.log(specificObjects); // 输出: { 'id1': 5, 'id2': 15 }
```
阅读全文