es6的變數解構賦值

2021-09-26 20:14:30 字數 1555 閱讀 4167

按照一定的模式,從陣列和物件中取值,對變數進行賦值,稱為解構。解構賦值時,只要等號兩邊不是物件,就先將其轉換成物件。

可以說這種方式就是等號兩邊的解構相同,左邊的變數就會被賦予右邊的對應值。

**演示:

陣列:

let [a,b,c] = [10,20,30];

console.log(a,b,c); ==> 輸出結果:10,20,30

物件:let = ;

console.log(a,b,c,d); ==> 輸出結果:'你' '真' '好' '看'

1)undefined與null 無法轉換成物件,解構賦值會報錯。 ==> cannot destructure propertyaof 『undefined』 or 『null』.

2)

let [a] = 10;

console.log(a);

這種賦值方式會報錯 ==> 10 is not iterable。原因:等號的右邊不是陣列,轉換物件以後不具備 iterator介面,或本身就不具備iterator介面

3)左邊引數允許預設值

let [a,b,c=30] = [10,20];

console.log(a,b,c);==> 輸出結果:10 20 30

4)物件解構賦值屬性沒有次序,賦值的時候會給對應的屬性名進行賦值。

let = ;

console.log(a,b,c,d)==> 輸出結果:10 10 303 20

5)變數名與屬性值不一致,是給屬性值進行賦值

let =;

console.log(a);==> 輸出結果: a is not defined

console.log(b);==> 輸出結果:12

這種情況是為a的屬性值b進行賦值

6)將乙個已有變數進行解構賦值

let a

( = );

console.log( = );==> 輸出結果:

(=):必須要加括號,避免js在解析過程中將 解析成**塊。

7)字串解構賦值,會將字串拆分開,把每一項賦值給對應變數

let [a,b,c] = 'hello world';

console.log(a,b,c);==> 輸出結果:『h』 『e』 『l』

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用來表示尚未存在的物件,常用來表示函式企圖返回乙個不存在的...