破坏嵌套对象

我想使用对象析构来简化我的代码。我正在从服务器获取数据并且解析是对象:


data = {

  current: {

     humidity: 73

  }

}

最终函数应如下所示,但这不起作用:


extractData({data.current.humidity: humidity  }) {

            return { humidity };

        }


extractData(data);

如何为这种对象做功能?


一只斗牛犬
浏览 181回答 2
2回答

萧十郎

解构模式就像对象文字,所以你不使用点,而是使用嵌套(另外,引用对象 [ data] 的变量名称不相关):// (I assume this is a method in a class; otherwise, add `function`)extractData({current: {humidity}}) {    return { humidity };}现场示例:function extractData({current: {humidity}}) {    return { humidity };}const data = {  current: {     humidity: 73  }};console.log(extractData(data));请注意,我将您的返回值保留在那里,这是一个具有属性的对象。humidity如果您只想要湿度值,请不要{}在它周围使用:// (I assume this is a method in a class; otherwise, add `function`)extractData({current: {humidity}}) {    return humidity;}现场示例:function extractData({current: {humidity}}) {    return humidity;}const data = {  current: {     humidity: 73  }};console.log(extractData(data));我以为你想要一个函数,但正如 Rittoo 所说,如果你想要做的只是获取 ; 的值,你就不需要一个函数humidity;以他们的答案为例。

富国沪深

或者您可以简单地使用以下格式从数据中获取湿度而无需调用函数。const {current: { humidity}} = data;
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript