如何在 JavaScript 中將陣列轉換為集合?
本教程將教你如何透過將陣列轉換為集合來消除 Javascript 中專案陣列中的重複值。
在 Javascript 中儲存來自資料集合的不同值時,我們可以利用 Set 資料結構來去除重複值。當我們希望從資料中消除重複項或利用 Set 資料結構提供的特殊功能時,將陣列轉換為 Set 會很有幫助。
讓我們看一些示例和方法來更好地理解這個概念 -
示例 1 - 使用 Set 建構函式
透過 Set 建構函式,可以從可迭代物件(或可以迴圈遍歷的物件,例如陣列)中獲取一組不同的值。
在這個示例中,我們將 -
建立一個名為 an array 的陣列,其中包含一些重複的值
透過將陣列作為引數傳遞給 Set 建構函式,建立一個名為 set 的新 Set 物件
Set 會自動刪除重複值,只保留唯一元素
檔名 - index.html
<html> <head> <title>Convert Array to Set - Using Set Constructor</title> <script> const array = [1, 2, 3, 3, 4, 5]; const set = new Set(array); console.log(set); // Output: Set {1, 2, 3, 4, 5} </script> </head> <body> <h1>Convert Array to Set - Using Set Constructor</h1> </body> </html>
輸出
結果將類似於下圖。
示例 2 - 使用擴充套件運算子
為了去除重複項,我們還可以使用擴充套件運算子 (...) 和 Set 建構函式。可以使用擴充套件運算子將可迭代物件(或可以迴圈遍歷的物件,例如陣列)擴充套件成單個元素,然後將這些元素傳遞給 Set 建構函式。
在這個示例中,我們將 -
使用擴充套件運算子 ... 將陣列的元素擴充套件成單個值。
然後,我們將這些值作為引數傳遞給 Set 建構函式,建立一個新的 Set 物件 set。
檔名 - index.html
<html> <head> <title>Convert Array to Set - Using Spread Operator</title> <script> const array = [1, 2, 3, 3, 4, 5]; const set = new Set([...array]); console.log(set); // Output: Set {1, 2, 3, 4, 5} </script> </head> <body> <h1>Convert Array to Set - Using Spread Operator</h1> </body> </html>
輸出
結果將類似於下圖。
示例 3 - 使用 Array.from()
我們可以使用 Array.from() 函式從現有陣列生成一個新的陣列例項,然後我們可以將這些元素髮送到 Set 建構函式
在這個示例中,我們將 -
使用 Array.from() 從陣列建立一個新陣列,然後將生成的陣列作為引數傳遞給 Set 建構函式,建立一個新的 Set 物件 set
檔名 - index.html
<html> <head> <title>Convert Array to Set - Using Array.from()</title> <script> const array = [1, 2, 3, 3, 4, 5]; const set = new Set(Array.from(array)); console.log(set); // Output: Set {1, 2, 3, 4, 5} </script> </head> <body> <h1>Convert Array to Set - Using Array.from()</h1> </body> </html>
輸出
結果將類似於下圖。
結論
總之,您可以透過使用 Set 建構函式、擴充套件運算子 (...) 或 Array.from() 函式在 JavaScript 中從陣列建立 Set。我們可以使用每種方法快速將陣列轉換為 Set,以便我們可以與各個元素進行互動。我們研究了將陣列轉換為集合的各種技術,並檢查了示例以進一步加深我們的理解。