【问题标题】:destructuring specific properties from complex object [duplicate]从复杂对象中解构特定属性[重复]
【发布时间】:2022-01-05 08:55:41
【问题描述】:

我正在发出一个 api 请求,该请求返回一个具有饮料属性的对象,该属性是饮料对象的数组。饮料对象有两个我感兴趣的属性,id 和 name。有没有一种简单的方法来解构数据,所以我只得到一个对象数组,其中包含每种饮料的 id 和名称?

我能想到的最好方法是执行以下操作:

 const {drinks} = await [api request]
 const arrDrinks = drinks.map((drinkObj, i) => {
      return {drinkObj.idDrink, drinkObj.strDrink}
    })

有没有办法通过嵌套解构在一行中做到这一点?

【问题讨论】:

  • 不,没有。但是拥有所有属性的对象有什么问题呢?你通常可以在任何只需要你感兴趣的两个的地方使用它。

标签: javascript arrays javascript-objects


【解决方案1】:

您用于返回的对象字面量的语法不正确。在参数中使用解构:

const arrDrinks = drinks.map(({idDrink, strDrink}) => ({idDrink, strDrink}));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-22
    • 2019-09-18
    • 2021-03-28
    • 2022-01-18
    • 1970-01-01
    • 1970-01-01
    • 2017-12-27
    • 1970-01-01
    相关资源
    最近更新 更多