ES6基本的語法 三 擴充套件運算子

2021-10-18 19:15:12 字數 1569 閱讀 7304

擴充套件運算子具備兩個功能,乙個 spreed 展開功能 & rest 收集功能。es6可以處理陣列,es7能處理物件。

擴充套件運算子的使用

function

sum(

...arg)

sum(5,

2,7,

1,3,

8);function

sum(a,b,

...arg)

sum(5,

2,7,

1,3,

8);function

sum(a,

...arg,b)

sum(5,

2,7,

1,3,

8);let a =[1

,2,3

,4,5

];let b =[6

,7,8

,9];

let c =

[...a,

...b]

;// 可以拼接陣列

我們先寫乙個 es5 中不定參的例子,下面的例子中,sum函式在被呼叫的過程中傳的引數是不固定的

function

sum(

)sum(1

,2,3

);sum(1,

2,3,

4,5)

這種在 es5 中遇到這種問題我們一般會用arguments去解決,

function

sum();

return sumnumber;

}sum(1

,2,3

);sum(1,

2,3,

4,5)

這麼寫看上去還好,但是如果你要在函式中寫排序和出去最大值最小值。

function

sum();

return sumnumber;

}sum(5

,2,7

,1,3

,8);

**沒有問題,但是比較麻煩,如果用擴充套件運算子

function

sum(

...arg)

) console.

log(sumnumber);}

sum(5,

2,7,

1,3,8);

es7 中的的擴充套件運算子

es7 擴充套件運算子處理物件

let company =

let b =

, d:30}

let obj =

完成了乙個淺轉殖。

可以用通過 es6 新增的方法assign去實現乙個深轉殖object.assign(target, ...sources)

ES6 擴充套件運算子

擴充套件運算子用3個點表示,功能是把陣列或者類陣列物件展開成一系列用逗號隔開的值 1,陣列 let arr red green blue console.log arr red,green,blue拷貝陣列 和object.assign一樣都是淺拷貝 let arr red green blue l...

ES6擴充套件運算子

首先,我們要讀仔細下面這句話,就很容易知道擴充套件運算子的使用了,可以在心裡反覆讀三遍 接下來,我們看下究竟怎麼個情況 宣告乙個方法 var foo function a,b,c console.log a console.log b console.log c 宣告乙個陣列 var arr 1,2...

es6擴充套件運算子

1 複製 拷貝 陣列 陣列元素都是基本資料型別 var arr a b c var copy arr console.log copy a b c arr copy false2 函式呼叫 陣列作引數 function add x,y var numbers 4 38 add numbers 423...