ES6 (2) 解構賦值

2022-03-08 11:42:09 字數 1845 閱讀 7631

對於解構賦值個人感覺需要理解左查詢與右查詢的區別,然後對解構賦值的理解才會更深一些。

解構賦值:對陣列和物件中的值提取,賦值到宣告的變數中。

模式匹配:模式相同,或者說樣子一樣

如果不成功,變數值為undefined,等號右邊不是陣列(不是可遍歷,因為模式是陣列)會報錯

允許指定預設值:

左右匹配使用的是嚴格相等運算子(嚴格等於undefined,如果為「」,null 是不可以的)

預設值可以使用已經賦值的變數。

物件:

跟陣列物件差不多,只不過是指定變數名需在物件中查詢到,用在物件賦值上非常有用。

另外可以使用變數名別名(前別名,後真名):

巢狀:

指定預設值:

對於已經宣告的變數,最好使用括號(發現不使用的時候現在可以)

陣列物件賦值:

解構賦值的規則是,只要等號右邊的值不是物件或陣列,就先將其轉為物件。由於undefinednull無法轉為物件,所以對它們進行解構賦值,都會報錯。

函式的解構賦值:

函式預設值:(預設值在等號左邊,預設值使用 「=」 而不是「:」

為引數宣告預設值(不是解構賦值a,b)

函式返回多個值:

函式引數預設值:(引用自阮大神)

jquery.ajax = function (url, ,

cache = true,

complete = function () {},

crossdomain = false,

global = true,

// ... more config

} = {}) ;

遍歷map:

const map = new map();

map.set('first', 'hello');

map.set('second', 'world');

for (let [key, value] of map)

ES6(2) 解構賦值

目錄 一 什麼是解構賦值?二 陣列模型的解構 array 三 物件模型的解構 object 解構賦值是對賦值運算子的擴充套件。是一種針對陣列或者物件進行模式匹配,然後對其中的變數進行賦值。1 基本 let a,b,c 1,2,3 console.log 輸出 2 可巢狀 let a,b c 1,2 ...

ES6 2 解構賦值(陣列和物件)

1.解構賦值 destructuring es6 允許按照一定模式,從陣列和物件中提取值 變數值的 對變數進行賦值 作用 這被稱為解構。2.陣列的解構賦值 let arr 1,2,3 let a,b,c arr console.log a,b,c 1 2 3let b,c 1,2,3 console...

ES6 解構賦值

陣列的解構賦值 let a,b 12,13 let a,b,c d 13,15,16 let a,b c 78,12 23 let x,y 1,3,5 x 1,y 3 let x,y,z a x a,y undefined z let h,b 1,2,3,4 1,2,3,4 預設值 let x tr...