ES6系列 變數的解構賦值

2021-08-25 05:36:31 字數 946 閱讀 2211

es6規定,允許按照一定模式從陣列和物件中提取值,對變數進行賦值,這種被稱為解構。

陣列的解構賦值是指,左邊是乙個陣列,右邊也是陣列,按照對應的位置對左邊的變數進行賦值。

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

//a=1, b=2, c=4

如果結構不成功,變數的值就等於undefined。

let [x, y, ...z]=['a'];

//x='a', y=undefined, c=

如果等號右邊的值或轉為物件以後,不具備interator介面,或者本身不具備interator介面,則會報錯。

let [a] = 1;

let [a] = false;

let [a] = nan;

let [a] = undefined;

let [a] = null;

let [a] = {};

// 以上都會報錯,前面五個轉為物件後不具備interator介面,最後乙個本身不具備interator介面

解構賦值允許指定預設值(備註:變數對應位置的值必須===undefined才能生效):

let [a = true] = [1];

//a=true

let [x, y='b'] = ['a'];

//x='a', y='b'

let[c=true]= [null];

//c=null,以為c對應位置的值為null,null!==undefined,故預設值無效

變數必須與屬性同名,才能取到對應的值:

let  = ;

//a=1, b=2

let = ;

//c=undefined

參考文章:

es6變數解構賦值

es6允許按照一定模式,從陣列和物件中提取值,對變數進行賦值,這被稱為解構。解構賦值在實際開發中可以大量減少我們的 量,並且讓我們的程式結構更清晰。陣列的解構賦值 let a,b 1 2 console.log a 1 console.log b 2 上面的 表示,可以從陣列中提取值,按照位置的物件...

ES6變數解構賦值

es6 允許按照一定模式,從陣列和物件中提取值,對變數進行賦值,這被稱為解構 es6之前我們申明多個變數需要按照下面的方法 let l a 1 let b 2 let c 3 let d 4 或者 let a 1,b 2,c 3,d 4 現在我們可以更加簡便 let a,b,c,d 1,2,3,4 ...

es6 變數解構賦值

1.陣列的解構賦值 等號兩邊的模式相同,左邊的變數就會被賦予對應的值 預設值 undefined型別只有乙個值,即undefined。當宣告的變數還未被初始化時,變數的預設值為undefined。null型別也只有乙個值,即null。null用來表示尚未存在的物件,常用來表示函式企圖返回乙個不存在的...