ES6 物件擴充套件運算子 res運算子

2022-05-15 01:03:46 字數 1153 閱讀 2868

當我們對引數的個數不確定時,可以用物件拓展運算子

funtion lala(...arg){

console.log(arg[0]); 1 

console.log(arg[1]); 2

console.log(arg[2]); 3

console.log(arg[3]); undefined

lala(1,2,3);

let arr1 = ['aaa','lala','con'];

let arr2 = arr1;

console.log(arr2);  ['aaa','lala','con'];

arr2.push('chengdu');

console.log(arr1)   ['aaa','lala','con','chengdu'];

引用導致.我們不想改變arr1 

可用物件擴充套件符來實現

let arr1 = ['aaa','lala','con'];

let arr2 = [...arr1];  //把arr1陣列的每個元素給arr2

console.log(arr2);  ['aaa','lala','con'];

arr2.push('chengdu');

console.log(arr2);  ['aaa','lala','con','chengdu'];   

console.log(arr1)   ['aaa','lala','con'];   //達到目的,沒有改變arr1 ,

rest運算子

rest  剩餘的意思  就是剩餘的引數

function lalajs(first,...arg){

console.log(arg.length);  5

lalajs(1,2,3,4,5,6);  

function lalajs(first,...arg){

for(let i = 0; iconsole.log(arg[i]);  2,3,4,5,6

這中迴圈 影響效率 有更好的是用for of 來寫迴圈

for(let val of arg){

console.log(val);  2 3 4 5 6

lalajs(1,2,3,4,5,6);  

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