Javascript 使用反结构访问嵌套在数组中的对象的属性

Javascript 使用反结构访问嵌套在数组中的对象的属性,javascript,ecmascript-6,Javascript,Ecmascript 6,如何使用解构访问嵌套在数组中的对象的属性?以下是我的代码: var weatherObj = { weather: [{ id: 721, main: "Haze", description: "haze", icon: "50d" }] }; 例如,我想用值“haze”来标记变量描述。分解所有级别 您可以一次分解一个级别。首先,获取weatherObj的weather属性。接下来,访问该属性中数

如何使用解构访问嵌套在数组中的对象的属性?以下是我的代码:

 var weatherObj = {
      weather: [{
        id: 721,
        main: "Haze",
        description: "haze",
        icon: "50d"
      }]
    };

例如,我想用值“haze”来标记变量描述。

分解所有级别

您可以一次分解一个级别。首先,获取weatherObj的
weather
属性。接下来,访问该属性中数组的第一个元素。最后,从元素分解所需的属性:

var {weather} = weatherObj
var [w1] = weather;
var {description} = w1;
具有嵌套的特定属性

如果您只对
description
属性感兴趣,可以按如下方式嵌套模式:

var {weather: [{description}]} = weatherObj;
// description === 'haze'
您还可以将值指定给与分解的属性名称不同的变量,就像使用基本分解一样:

var {weather: [{description: desc}]} = weatherObj;
// desc === 'haze'

不知道在分解结构(而不是导入)时如何重命名属性。今天学到了一些新东西,谢谢!