ES6 解構賦值

2021-10-05 17:11:49 字數 1016 閱讀 9240

解構賦值是對賦值運算子的擴充套件。

他是一種針對陣列或者物件進行模式匹配,然後對其中的變數進行賦值。

在**書寫上簡潔且易讀,語義更加清晰明了;也方便了複雜物件中資料字段獲取。

在解構中,有下面兩部分參與:

基本

let [a, b, c] = [1, 2, 3]; // a = 1 // b = 2 // c = 3

可巢狀

let [a, [[b], c]] = [1, [[2], 3]]; // a = 1 // b = 2 // c = 3

可忽略

let [a, , b] = [1, 2, 3]; // a = 1 // b = 3

不完全解構

let [a = 1, b] = ; // a = 1, b = undefined

剩餘運算子

let [a, ...b] = [1, 2, 3]; //a = 1 //b = [2, 3]

字串等

在陣列的解構中,解構的目標若為可遍歷物件,皆可進行解構賦值。可遍歷物件即實現 iterator 介面的資料。

let [a, b, c, d, e] = 'hello'; // a = 'h' // b = 'e' // c = 'l' // d = 'l' // e = 'o'

解構預設值

let [a = 2] = [undefined]; // a = 2

當解構模式有匹配結果,且匹配結果是 undefined 時,會觸發預設值作為返回結果。

let [a = 3, b = a] = ; // a = 3, b = 3 let [a = 3, b = a] = [1]; // a = 1, b = 1 let [a = 3, b = a] = [1, 2]; // a = 1, b = 2

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

ES6解構賦值

一 基本用法 解構 destructuring 按照一定的模式,從陣列或者物件中提取值,對變數進行賦值。let par1,par2,par3 1,2 console.log par1,par2,par3 1 2 不完全解構時par3對值為undefined 解構賦值允許指定變數對預設值。let pa...

es6解構賦值

coding changes the world accumulating makes yourself 主要從三個方面講述 陣列式的解構賦值 物件式的解構賦值 函式中的解構賦值 preface 現今的變數宣告語法十分的直接 左邊是乙個變數名,右邊可以是乙個陣列 的表示式或乙個物件 的表示式,等等。...