JavaScript數(shù)組之展開運算符詳解
展開運算符是什么?有什么作用?
展開運算符可以將一個數(shù)組展開
const arr = [1,2,3,4,5]
// 我們使用...展開數(shù)組
console.log(...arr) //1 2 3 4 5
它不會修改原數(shù)組
典型運用場景:求數(shù)組最大值、最小值、合并數(shù)組等會讓我們代碼更加簡潔
最大值
const arr = [1,2,3,4,5]
//...arr 等價于 1,2,3,4,5
console.log(Math.max(...arr)) // 5
最小值
const arr = [1,2,3,4,5]
//...arr 等價于 1,2,3,4,5
console.log(Math.min(...arr)) // 1
合并
const arr1 = [1,2,3]
const arr2 = [4,5,6]
const arr = [...arr1,...arr2]
console.log(arr) //[1, 2, 3, 4, 5, 6]附:js 數(shù)組展開對象去重
在JavaScript中,可以使用數(shù)組展開運算符(Spread Operator)和Set數(shù)據(jù)結(jié)構(gòu)來實現(xiàn)數(shù)組展開對象去重。下面是實現(xiàn)的步驟:
- 定義一個包含重復(fù)對象的數(shù)組。
- 使用數(shù)組展開運算符將數(shù)組展開為一個新的數(shù)組。
- 使用Set數(shù)據(jù)結(jié)構(gòu)去除數(shù)組中的重復(fù)項。
- 將Set轉(zhuǎn)換回數(shù)組。
以下是代碼示例:
let arr = [
{id: 1, name: '張三'},
{id: 2, name: '李四'},
{id: 1, name: '張三'},
{id: 3, name: '王五'}
];
let uniqueArr = [...new Set([...arr])];
console.log(uniqueArr);
// 輸出: [{id: 1, name: '張三'}, {id: 2, name: '李四'}, {id: 3, name: '王五'}]
在上面的代碼中,我們使用了數(shù)組展開運算符將原始數(shù)組展開為一個新的數(shù)組。然后,我們使用Set數(shù)據(jù)結(jié)構(gòu)去除了數(shù)組中的重復(fù)項。最后,我們將Set轉(zhuǎn)換回數(shù)組,并將結(jié)果賦值給uniqueArr變量。最終,uniqueArr將包含去重后的對象數(shù)組。
總結(jié)
到此這篇關(guān)于JavaScript數(shù)組之展開運算符的文章就介紹到這了,更多相關(guān)JS數(shù)組展開運算符內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
微信公眾平臺 客服接口發(fā)消息的實現(xiàn)代碼(Java接口開發(fā))
這篇文章主要介紹了微信公眾平臺 客服接口發(fā)消息的實現(xiàn)代碼(Java接口開發(fā)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-04-04
JavaScript簡單實現(xiàn)的仿微博留言功能示例
這篇文章主要介紹了JavaScript簡單實現(xiàn)的仿微博留言功能,涉及javascript頁面元素屬性動態(tài)操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2019-01-01
ListBox實現(xiàn)上移,下移,左移,右移的簡單實例
這篇文章主要介紹了ListBox實現(xiàn)上移,下移,左移,右移的簡單實例。需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02
js中關(guān)于new Object時傳參的一些細節(jié)分析
這里討論給Object傳參時,其內(nèi)部的處理。參考:ECMA262 V5 15.2.2.12011-03-03
JavaScript中內(nèi)置函數(shù)Map()的使用
Map()是JavaScript中內(nèi)置的一種數(shù)據(jù)結(jié)構(gòu),它允許您將鍵值對映射到任意類型的值,主要介紹了JavaScript中內(nèi)置函數(shù)Map()的使用,感興趣的可以了解一下2023-05-05

