簡體   English   中英

破壞嵌套的 object

[英]Destructing nested object

我想使用 object 破壞來簡化我的代碼。 我正在從服務器獲取數據,解析為 object:

data = {
  current: {
     humidity: 73
  }
}

最終的 function 應該看起來像這樣,但這不起作用:

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

extractData(data);

這種object怎么辦?

解構模式就像 object 文字,所以你不使用點,你使用嵌套(同樣,引用 object [ 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屬性的object 如果您只想要濕度,請不要在其周圍使用{}

// (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));


我假設您想要一個 function,但正如 Rittoo 所說,如果您只想獲取humidity值,則不需要一個; 例如,請參閱他們的答案。

或者您可以簡單地使用以下格式從數據中獲取濕度,而無需調用 function。

const {current: { humidity}} = data;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM