溫馨提示×

溫馨提示×

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

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

JavaScript中三個點代表什么意思

發(fā)布時間:2021-10-28 17:18:23 來源:億速云 閱讀:471 作者:iii 欄目:web開發(fā)

這篇文章主要講解了“JavaScript中三個點代表什么意思”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“JavaScript中三個點代表什么意思”吧!

在JavaScript中,三個點“...”代表擴展運算符,是在ES6中新增加的內(nèi)容,它可以在函數(shù)調(diào)用/數(shù)組構(gòu)造時,將數(shù)組表達式或者string在語法層面展開;還可以在構(gòu)造字面量對象時將對象表達式按照“key-value”的方式展開。

JavaScript中三個點代表什么意思

本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

我們在看js代碼時經(jīng)常會出現(xiàn)(...)三個點的東西,它究竟是什么意思?又有何用處?

下面我就給大家分享一下三個點的那些事

什么意思?

三個點(...)真名叫擴展運算符,是在ES6中新增加的內(nèi)容,它可以在函數(shù)調(diào)用/數(shù)組構(gòu)造時,將數(shù)組表達式或者string在語法層面展開;還可以在構(gòu)造字面量對象時將對象表達式按照key-value的方式展開

字面量一般指[1,2,3]或者{name:'chuichui'}這種簡潔的構(gòu)造方式,多層嵌套的數(shù)組和對象三個點就無能為力了

說白了就是把衣服脫了,不管是大括號([])、花括號({}),統(tǒng)統(tǒng)不在話下,全部脫掉脫掉!

// 數(shù)組
var number = [1,2,3,4,5,6]
console.log(...number) //1 2 3 4 5 6
//對象
var man = {name:'chuichui',height:176}
console.log({...man}) / {name:'chuichui',height:176}

有什么用?

它的用處很廣泛,我們隨處都可以看到,下面是幾個常見的例子

復制用它

//數(shù)組的復制
var arr1 = ['hello']
var arr2 =[...arr1]
arr2 // ['hello']
//對象的復制
var obj1 = {name:'chuichui'}
var obj2 ={...arr}
ob12 //  {name:'chuichui'}

合并用它

//數(shù)組的合并
var arr1 = ['hello']
var arr2 =['chuichui']
var mergeArr = [...arr1,...arr2]
mergeArr  // ['hello','chuichui']
// 對象分合并
var obj1 = {name:'chuichui'}
var obj2 = {height:176}
var mergeObj = {...obj1,...obj2}
mergeObj // {name: "chuichui", height: 176}

字符轉(zhuǎn)數(shù)組用它

var arr1 = [...'hello']
arr1 // ["h", "e", "l", "l", "o"]

函數(shù)傳參用它

可以和正常的函數(shù)相結(jié)合,靈活使用

function f(v,w,x,y,z){ }
var args = [2,3]
f(1,...args,4,...[5])

當我們想把數(shù)組中的元素迭代為函數(shù)參數(shù)時,用它!

function f(x,y,z){}
var args = [1,2,3]
f(...args)

// 以前的方法
f.apply(null,args);

感謝各位的閱讀,以上就是“JavaScript中三個點代表什么意思”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對JavaScript中三個點代表什么意思這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

向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)容。

AI