ES6解構賦值和展開運算子

2021-09-20 13:30:15 字數 1075 閱讀 4560

解構賦值

let ary =[1

,2,3

]//解構賦值:按照乙個資料值的結構,快速解析獲取到其中的內容:

//1、專案中一般都是針對與陣列或者物件進行解構賦值

//***************===陣列解構賦值

let[a]

= ary;

console.

log(a)

;//1

let[

,, c]

= ary;

console.

log(c)

;//3

let[a,

...b]

= ary;

console.

log(a, b)

;//1 [2, 3]

//如果沒有對應值,可以設定預設值

let[a, b, c,d =0]

= ary;

//***************==物件解構賦值

let obj =

;let

= obj;

console.

log(name, age)

;let

= obj;

console.

log(***)

;//=>0

let= obj;

console.

log(ageaa)

;

…的作用

1.剩餘運算子

let array =[12

,23,45

];let[

...arg]

= array;

=>ary.

slice(0

);function

fn(context,

...arg)

let obj =;fn

(obj,10,

20,30)

;

2.展開運算子

console.log(1, ...[2, 3, 4], 5);

// 1 2 3 4 5

es6 展開運算子

展開運算子不能用在物件當中,只能在可遍歷物件中使用 iterables iterables的實現是依靠 symbol.iterator 函式,目前只有array,set,string內建 symbol.iterator 方法,不過es7草案中已經加入了物件展開運算子。可用展開運算子展開陣列,解構陣列...

es6 展開運算子

好記性不如爛筆頭,在學習的過程中,越來越明白這句話的含義 es6的展開運算子使用三個點來表示 使用展開運算子的前提 物件具有 iterator 遍歷器介面 比如陣列,怎麼判斷乙個物件是否具有iterator 遍歷器介面呢,我們檢視物件是否有symbol symbol.iterator 屬性就可以了 ...

es6展開運算子

展開運算子 在es6中用.來表示展開運算子,它可以將陣列方法或者物件進行展開。先來看乙個例子它是如何使用的。const arr1 1,2,3 const arr2 arr1,10,20,30 這樣,arr2 就變成了 1,2,3,10,20,30 arr1中的值完全轉殖到了arr2中 arr1改變a...