您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“ES6怎么將Set轉(zhuǎn)化為數(shù)組”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“ES6怎么將Set轉(zhuǎn)化為數(shù)組”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。
Set
是 ES6 中新增的一種集合類型,類似于數(shù)組,但其成員的值是唯一的,即不會(huì)重復(fù)。關(guān)于Set,可以閱讀《JavaScript中的Set數(shù)據(jù)操作:交集、差集、交集、對(duì)稱差集》。Set
對(duì)象是一個(gè)構(gòu)造函數(shù),可以使用 new
關(guān)鍵字來(lái)創(chuàng)建一個(gè) Set
實(shí)例。
例如:
const mySet = new Set();
Set
對(duì)象具有以下特征:
Set
實(shí)例的成員唯一,不會(huì)重復(fù)。
Set
實(shí)例可以存儲(chǔ)任何類型的值,包括基本類型和對(duì)象。
Set
實(shí)例是可迭代的,可以使用 for...of
循環(huán)遍歷其中的值。
Set
實(shí)例的 size
屬性可以用來(lái)獲取它包含的成員數(shù)量。
Set
對(duì)象有以下常用方法:
add(value)
:添加一個(gè)值到 Set
實(shí)例中。 delete(value)
:從 Set
實(shí)例中刪除一個(gè)值。 has(value)
:判斷 Set
實(shí)例中是否包含某個(gè)值,返回一個(gè)布爾值。 clear()
:清空 Set
實(shí)例中的所有值。
可以使用以下代碼創(chuàng)建一個(gè)包含幾個(gè)元素的 Set
對(duì)象并使用其方法:
const mySet = new Set(); mySet.add(1); mySet.add("two"); mySet.add({ name: "DevPoint" }); console.log(mySet.has("two")); // 輸出 true mySet.delete(1); console.log(mySet.size); // 輸出 2 mySet.clear(); console.log(mySet.size); // 輸出 0
在 ES6 中,可以使用 Array.from()
方法將 Set
轉(zhuǎn)換為數(shù)組。該方法接受一個(gè)可迭代對(duì)象,并返回一個(gè)新數(shù)組。
例如,假設(shè)有一個(gè) Set
對(duì)象 mySet
,可以按以下方式將其轉(zhuǎn)換為數(shù)組:
const mySet = new Set([1, 2, 3]); const myArray = Array.from(mySet); console.log(myArray); // 輸出 [1, 2, 3]
除此之外,還可以使用擴(kuò)展運(yùn)算符 ...
來(lái)將 Set
轉(zhuǎn)換為數(shù)組。例如:
const mySet = new Set([1, 2, 3]); const myArray = [...mySet]; console.log(myArray); // 輸出 [1, 2, 3]
這種方法更簡(jiǎn)潔,但不支持 IE 瀏覽器。
除了使用 Array.from()
方法和擴(kuò)展運(yùn)算符 ...
,還有就是通過(guò)遍歷 Set
并將每個(gè)元素添加到一個(gè)新數(shù)組中。
const mySet = new Set([1, 2, 3]); const myArray = []; for (let item of mySet) { myArray.push(item); } console.log(myArray); // 輸出 [1, 2, 3]
讀到這里,這篇“ES6怎么將Set轉(zhuǎn)化為數(shù)組”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。