1. 程式人生 > 其它 >es6學習筆記(二)解構賦值

es6學習筆記(二)解構賦值

技術標籤:讀書筆記es6

話說剛接觸這個概念的時候是在學習小程式雲開發,然後雲函式裡定義的,一看當時有點懵,並不知道是幹啥用的,真是書到用時方恨少啊,需要會的知識還是蠻多的。這一節的學習目標是跟著菜鳥教程仔仔細細的學一下解構賦值,真正掌握了。菜鳥教程-解構賦值

陣列的解構賦值

在這裡插入圖片描述
這樣可以連續定義三個變數,分別為a、b、c,通過這個語法之後,右邊陣列對應位置上的值會依次賦值給變數,所以輸出結果是a=1,b=2,c=3
還有比較神奇的運算子…我第一次看到這個運算子還以為是寫錯了,其實也是一種新的語法,按字面理解是省略的意思
在這裡插入圖片描述
其實我覺得理解為省略也沒啥不妥的,a=1,剩下的都賦值給b麼,所以b=[2,3]

當然了教程中還有各種奇怪的解構,我感覺那些不利於程式碼的可讀,還是儘量別學習一些不好的習慣

物件模型的解構

在學習小程式雲開發部分,第一段雲函式的示例程式碼直接讓我懵逼了

const cloud = require('wx-server-sdk')
exports.main = async (event, context) => {
  let { userInfo, a, b} = event
  let { OPENID, APPID } = cloud.getWXContext() // 這裡獲取到的 openId 和 appId 是可信的
  let sum = a + b

  return
{ OPENID, APPID, sum } }

有沒有完全看不懂的感覺,官方居然號稱是非常容易,但是對於菜鳥的我來說真的是太難了。

let { userInfo, a, b} = event
  let { OPENID, APPID } = cloud.getWXContext()

這兩行其實就是物件解構,將event中對應的值賦值給左邊,這樣我們就明白它是賦值的意思,和我們直接賦值是一個效果,如a=1;
至於教程裡講的那些,作為好學的你倒是可以記憶,像我這種實用主義者,我只需知道它是幹什麼用的,最佳實踐就OK啦。