ES6擴充套件運算子使用。

2022-05-23 15:30:15 字數 1914 閱讀 3059

1.基本使用

陣列

let arr = [1,2,3,4,5];

let arr2 =[...arr];

console.log(arr2);

//[ 1, 2, 3, 4, 5 ]

console.log(arr2 ==arr);

//false

物件

let obj = ;

let obj2 =;

console.log(obj2);

==obj2);

//false

字串轉陣列

let str = "hello";

let str2 =[...str];

console.log(str2);

//[ 'h', 'e', 'l', 'l', 'o' ]

2.函式傳值;

function

fn(a,b,c)

let arr = [1,2,3];

//es5

//fn(arr[0],arr[1],arr[2]);

////

es6fn(...arr);//1

23

3.陣列拷貝

let arr = [1,2,3,4];

let arr2 =[...arr];

arr2.push(5);

console.log(arr);

//[ 1, 2, 3, 4 ]

console.log(arr2);

//[ 1, 2, 3, 4, 5 ]

console.log(arr ==arr2);

//false

4.物件拷貝

let obj = ;

let obj2 =;

obj2.c = 3;

console.log(obj);

2); ==obj2);

//false

5.代替陣列的unshift方法

let arr = [1,2,3];

let arr2 = [4,5,...arr];

console.log(arr);

//[ 1, 2, 3 ]

console.log(arr2);

[ 4, 5, 1, 2, 3]

console.log(arr ==arr2);

false

6.代替陣列的push方法

let arr = [1,2,3];

let arr2 = [...arr,4,5,"a",null,undefined,function

(){},symbol];

console.log(arr);

//[ 1, 2, 3 ]

console.log(arr2);

[ 1, 2, 3, 4, 5, 'a', null

, undefined, [function], [function: symbol] ]

console.log(arr ==arr2);

//false

7.配合解構使用

陣列

let [a,...arr] = [1,2,3,4,5];

console.log(a);//1

console.log(arr);

//[ 2, 3, 4, 5 ]

物件

let  = ,d:null

,e:undefined,e:symbol};

console.log(a);//1

console.log(obj);

//

8.總結

放在被賦值一方為rest運算子,放在賦值一方為擴充套件運算子

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...