當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


TypeScript Set轉Array用法及代碼示例


A 設定於TypeScript用於創建不包含重複元素的特定類型的列表。如果任何元素重複多次,它將自動刪除重複的存在並僅在列表中考慮它一次。在本文中,我們將把這些類型的列表轉換為也接受重複值的數組。

以下是將集合轉換為數組的方法:

使用Array.from()方法

Array.from() 方法從具有 length 屬性且可迭代的實體返回一個數組。由於Set是一個可迭代的實體,我們可以使用此方法將其轉換為數組。

用法:

const newArrayName = Array.from(setName);

例子:下麵的代碼示例說明了如何使用 Array.from() 方法將 Set 轉換為數組。

Javascript


const testSet = new Set<number>();
for (let i = 1; i <= 5; i++) {
    testSet.add(i);
}
console.log(testSet);
const arrayFromSet: number[] =
    Array.from(testSet);
console.log(arrayFromSet);
arrayFromSet[5] = 5;
console.log(arrayFromSet);

輸出:

Set (5) {1, 2, 3, 4, 5}
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5, 5]

使用擴展運算符

擴展運算符還可以用於將 Set 轉換為數組,使用三個點 (…) 語法,後跟 Set 的名稱。

用法:

const newArrayName = [...setName];

例子:下麵的代碼示例實現了擴展運算符,以將 TypeScript 中的集合轉換為數組。

Javascript


const testSet = new Set<number>();
for (let i = 1; i <= 5; i++) {
    testSet.add(i);
}
console.log(testSet);
const arrayFromSet: number[] = [...testSet];
console.log(arrayFromSet);
arrayFromSet[5] = 5;
console.log(arrayFromSet);

輸出:

Set (5) {1, 2, 3, 4, 5}
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5, 5]

使用forEach()迭代器方法

我們可以使用forEach()循環遍曆Set的所有元素,然後使用Array.push()方法將它們中的每一個元素推入一個數組中。

用法:

setName.forEach((val)=>{
arrayName.push(val);
});

例子:下麵的代碼示例使用 forEach() 循環方法將 Set 轉換為 TypeScript 中的數組。

Javascript


const testSet = new Set<number>();
for (let i = 1; i <= 5; i++) {
    testSet.add(i);
}
console.log(testSet);
const arrayFromSet: number[] = [];
testSet.forEach((setVal) => {
    arrayFromSet.push(setVal)
});
console.log(arrayFromSet);
arrayFromSet[5] = 5;
console.log(arrayFromSet);

輸出:

Set (5) {1, 2, 3, 4, 5}
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5, 5]


相關用法


注:本文由純淨天空篩選整理自abhish8rzd大神的英文原創作品 How to Convert a Set to an Array in TypeScript ?。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。