数组匹配对应的对象属性并取出
时间: 2023-08-02 09:35:55 浏览: 51
好的,如果您想在 JavaScript 中通过数组元素的值来匹配相应的对象属性并取出该属性的值,可以使用以下方法:
假设我们有一个包含多个对象的数组,每个对象都有一个唯一的标识符(id)和其他一些属性,如下所示:
```javascript
const items = [
{ id: 1, name: 'item 1', price: 10 },
{ id: 2, name: 'item 2', price: 20 },
{ id: 3, name: 'item 3', price: 30 },
];
```
现在,我们有一个包含多个 id 的数组,我们想要获取与这些 id 相对应的对象的名称(name)和价格(price)属性,可以使用以下代码:
```javascript
const ids = [1, 3];
const matchedItems = items.filter(item => ids.includes(item.id))
.map(item => ({ name: item.name, price: item.price }));
console.log(matchedItems);
// Output: [ { name: 'item 1', price: 10 }, { name: 'item 3', price: 30 } ]
```
首先,我们使用 `filter()` 方法过滤出数组中 id 包含在 `ids` 数组中的对象,然后使用 `map()` 方法将这些对象转换为只包含名称和价格属性的新对象数组。最后,我们将结果打印到控制台上。
希望这个例子能够帮助您解决问题。