幾個解構賦值的小例子

2021-10-13 08:49:47 字數 1525 閱讀 1567

1

let

[a,b,c]=[

1,2,

[3,4

]];console.

log(a,b,c)

;

顯示 1,2,(2)[3,4]

2

let

[a,b,

[c]]=[

1,2,

[3,4

]];console.

log(a,b,c)

;

顯示 1,2,3

所以結構賦值不一定是完全對應的,可以是按順序對應一部分。

3

let

[a,b,c,d]=[

1,2,

[3,4

]];console.

log(a,b,c,d)

;

顯示1,2,(2)[3,4],undefined

4

let

[a,b,c,d =5]

=[1,

2,[3

,4]]

;console.

log(a,b,c,d)

;

顯示1,2,(2)[3,4],5

所以結構賦值可以有預設值,如果沒有傳入的值就用預設值。

1

let user =

;let

= user;

console.

log(name,age)

;

顯示cleon 22

2、取新名字

let

= user;

console.

log(uname,uage)

;

3、物件的預設值

和陣列裡的預設值一樣。

let user =

;let

= user;

console.

log(name,age)

;

let str =

'ich bin legende'

;let

[a,b,c,d,e]

= str;

console.

log(a,b,c,d,e)

;

顯示 i,c,h,空格,b

就是可以把乙個陣列給拆開,可以和rest引數比較按情況選方便的。

就是把乙個返回值解構成各個屬性或下標。

解構賦值 陣列的解構賦值

什麼是解構賦值?es6 允許按照一定模式,從陣列和物件中提取值,對變數進行賦值,這被稱為解構 destructuring 我的理解是 允許宣告一種模式 陣列 物件等 裡面包含乙個或多個變數,再分別對這些變數遍歷 按照對應位置 賦值。以前,為變數賦值,只能直接指定值。let a 1 let b 2 通...

幾個js的小例子

1 js的作用域,window物件 if a in window alert a 1 js的作用域是由函式劃分的 2 js的執行順序 var a 1,b function a x alert a 1 3 js引數 arguments 的含義 function b x,y,a b 1,2,3 10 4...

es6 解構賦值 的幾個注意點

1 結構不成功,變數值等於undefined let lzp let lt,lzp 1 以上兩種情況屬於結構不成功,lzp 的值都是 undefined 2 如果等號的右邊不是陣列,則會報錯 等號右邊的都不是陣列,所以都會報錯 let lzp 1 let lzp false let lzp nan ...