ES6陣列的解構賦值

2021-07-31 17:25:22 字數 1073 閱讀 3202

解構

(destructuring)。是指在

es6允許按照一定模式,從陣列和物件中提取值,對變數進行賦值,

在解構出現之前為變數賦值,只能直接指定值。

var a=1;

var b=2;

var c=3;

es6可以寫成這樣

var [a,b,c]=[1,2,3];

這樣表示從[1,2,3]這個陣列中提取值,會按照對應的位置,對變數進行賦值。

本質上,這種寫法屬於「模式匹配」,只要等號兩邊的模式相同,左邊的變數就會被賦予對應的值。下面是一些使用巢狀陣列進行解構的例子。

1.解構成功

輸出結果:1,2

輸出結果:

[2,3,4]

這些是解構成功的例子,當然也有解構不成功。

2.解構不成功

解構不成功,變數的值就等於undefined

輸出結果:undefined。

3.不完全解構

不完全解構即等號左邊的模式,只匹配一部分的等號右邊的陣列。這種情況下,解構依然可以成功。

輸出結果:1,2

但是如果等號的右邊不是陣列,嚴格來說不是可遍歷的結構,那樣也會報錯。

let [a] = false;

let [a] = nan;

let [a] = undefined;

let [a] = null;

let [a] = {};

解構賦值不僅適用於let宣告的變數,同樣適用於

var 

,const

宣告的變數。

ES6 陣列的解構賦值

陣列的解構賦值 es6 允許按照一定模式,從陣列和物件中提取值,對變數進行賦值,這被稱為解構 destructuring 以前,為變數賦值,只能直接指定值。let a 1 let b 2 let c 3 es6 允許寫成下面這樣。let a,b,c 1,2,3 console.log a 1 con...

ES6 陣列的解構賦值

陣列的解構賦值 將陣列的值,或者物件的屬性,提取到不同的變數中 更複雜的匹配規則 擴充套件運算子 let arr1 1,2 let arr2 3,4 let arr3 5,6 let arr4 arr1,arr2,arr3 三個陣列 let arr5 arr1,arr2,arr3 合併陣列的值 陣列...

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...