簡體   English   中英

為什么以及何時我們在javascript中使用對象分解?

[英]why and when we use object destructuring in javascript?

我看過很多這樣的代碼:

navigator.geolocation.getCurrentPosition(
       ({coords}) => {
         const {latitude, longitude} = coords
         this.setState({
           position: {
             latitude,
             longitude,
           },
           region: {
             latitude,
             longitude,
             latitudeDelta: 0.005,
             longitudeDelta: 0.001,
           }
         })
       },
       (error) => alert('Error: Are location services on?'),
       {enableHighAccuracy: true}
     );

我的問題是為什么以及何時在參數中使用對象分解。

為什么要coords使用對象coordserror不使用它呢?

這都是關於JS中的對象的。 我建議您閱讀有關對象的更多信息。

但這是一個簡單的例子。

const car = {door: "blue", tires: 4}. 

當然,您可以像car.door一樣使用它來獲取blue ,或者使用car.tires來獲取4 但是您可以看到您正在編寫相同的代碼car. 到處。 最好執行以下操作:

const {door, tires} = car

然后在其他任何地方,您都可以做doortires 這完全取決於個人喜好。 我之所以使用它,是因為它簡單易懂,並且重復代碼更少。 沒有好壞。

至於您為什么不需要破壞error ,是因為我們只是在檢查error存在。 這與您寫的內容相同:

(error) => alert('something') 

(Boolean(error)) => alert('something').

在這里,您甚至都不關心error內在的內容,您只想知道是否存在error 這就是為什么您不需要進行銷毀的原因。

如果要在error獲取某些內容,可以說codeerror的關鍵之一。 那你可以做

({code}) => alert(code)

暫無
暫無

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

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