【问题标题】:How to destructure nested variable from the array如何从数组中解构嵌套变量
【发布时间】:2019-10-11 14:25:41
【问题描述】:

我的 obj 看起来像这样:

blogPost: {
  questions: 
    [
      {
        id: 234
      }
    ]
}

我想解构id,但这似乎不正确。

const {questions[0]: {id}} = blogPost

【问题讨论】:

标签: javascript destructuring


【解决方案1】:

同时使用array destructuring 使其工作:

{questions:[{id}]}=blogPost

或者,您也可以在数组上使用对象解构(数组是对象),但这不太语义:

{questions:{'0':{id}}}=blogPost

这以不同的方式访问属性:数组解构调用Symbol.iterator 方法来迭代数组,而对象解构只对指定的键执行[[Get]] 操作。

【讨论】:

  • 有趣!我不知道可以解构嵌套对象。通过上述操作,您还声明了一个名为“questions”的变量,还是只是“id”变量?
【解决方案2】:

试试这个:

const { questions } = blogPost;
const { id } = questions[0];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-11
    • 2017-01-08
    • 2019-01-21
    • 2022-01-08
    相关资源
    最近更新 更多