溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

基于es6三點運算符怎么用

發(fā)布時間:2021-08-10 09:33:18 來源:億速云 閱讀:122 作者:小新 欄目:web開發(fā)

這篇文章主要為大家展示了“基于es6三點運算符怎么用”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學習一下“基于es6三點運算符怎么用”這篇文章吧。

先看一個es6規(guī)范下三點運算符的使用實例:

let fun=function(a,...list){
 console.log(a,list);
};
fun('0','a','b','c');//0 [a,b,c]

以上可以看到我們現(xiàn)在在定義函數(shù)對象時可以動態(tài)設(shè)置參數(shù)的個數(shù)了:第一個參數(shù)a是普通參數(shù)(忽略),

大家可以看到第二個參數(shù)list前面有三個點 “...”,這種寫法在es6規(guī)范中有兩個用途

1 . 作為參數(shù)使用。

2 . 作為拓展運算符使用。

● 三點--作為參數(shù):

let fun1=function(...args){
 for(let arg of args){
  console.log(arg);
 };
 console.log(args)
};
fun1('a','b','c');//a b c,[a,b,c]
fun1(1,2);//1 2,[1,2] ...args表示了所有的形參,不管傳入多少參數(shù),都可以通過args進行遍歷得到,args則集合所有的參數(shù)組成參數(shù)數(shù)組

let fun2=function(arr,...args){
 console.log(arr);
 console.log(args);
};
fun2(1,2,3);//1, [2,3]
fun2(1);//1, []當...args有其他參數(shù)時,rest參數(shù)args數(shù)組集合除去前面參數(shù)之后的參數(shù)。

let fun3=function(arr1,..args,arr2){
 console.log(args);
}//此時報錯!切記,三點作為rest參數(shù)的時候,其后不能再有任何參數(shù),只能作為最后一個角色出現(xiàn)!

[x,...y]=[1,2,3];
console.log(y);//[2,3]

[x,...y,z]=[1,2,3];//報錯,Rest element must be last element in array

//作為參數(shù),三點運算符可以函數(shù),解構(gòu)賦值等方面發(fā)揮重要作用。‘人如其名',rest表示剩下的,
//它把剩下的任意數(shù)量的參數(shù)推入數(shù)組,所以也繼承了數(shù)組的方法。rest參數(shù)只能出現(xiàn)在最后一位,
//不然會報錯,當然以擴展運算的身份出現(xiàn)時另當別論。

● 三點--作為拓展運算符使用:

let arr=[1,2,3];
console.log(...arr);//1, 2, 3返回數(shù)組中的各項

let a=[2,3];
console.log(1,...a,4);//1,2,3,4擴展運算符可以放在中間

let divs=document.querySelectorAll('div');
[...divs];//Array[300],[]可以將divs轉(zhuǎn)為數(shù)組解構(gòu);
console.log(...divs);//div1,div2....遍歷divs各項

let set=new Set([1,2,3,3]);
[...set];//返回數(shù)組[1,2,3],可以將set數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)化為數(shù)組

let map=new Map([[1,'a'],[2,'b'],[3,'c']]);
[...map.keys];//返回[1,2,3],屬性數(shù)組;
[...map.values];//返回[a,b,c],value數(shù)組

[...'wbiokr'];//["w", "b", "i", "o", "k", "r"]遍歷字符串,返回各個字符;

let str='abc';
['aaa',...str,'ccc'];//[aaa, a, b, c, ccc]擴展運算符位置比較任性

//三點的擴展運算符,把數(shù)組或者類數(shù)組對象展開成一系列逗號隔開的值序列,它好比rest參數(shù)時候的逆運算。

以上是“基于es6三點運算符怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

es6
AI