溫馨提示×

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

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

ES6怎么將Set轉(zhuǎn)化為數(shù)組

發(fā)布時(shí)間:2023-02-25 10:19:20 來(lái)源:億速云 閱讀:98 作者:iii 欄目:開發(fā)技術(shù)

本文小編為大家詳細(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è)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI