Javascript Set資料結構

  1. Set 可以修改資料嗎?
    1. 1. 添加(Add)
    2. 2. 刪除(Delete)
    3. 3. 檢查是否存在(Has)
    4. 4. 清空(Clear)
    5. 5. 更新(Update)
    6. 6. 迭代(Iteration)
  2. 總結

Set 可以修改資料嗎?

Set 是 JavaScript 中的一種資料結構,用於存儲唯一的值。Set 的主要特點是值的唯一性,即每個值只能出現一次。Set 的資料是可以修改的,以下是如何在 Set 中進行各種操作的說明:

1. 添加(Add)

可以使用 add() 方法將新值添加到 Set 中。如果值已經存在於 Set 中,它不會被重複添加。

const mySet = new Set<number>();
mySet.add(1); // 添加 1
mySet.add(2); // 添加 2
mySet.add(1); // 試圖添加重複的 1,不會生效

console.log(mySet); // Output: Set { 1, 2 }

2. 刪除(Delete)

可以使用 delete() 方法從 Set 中刪除指定的值。如果值存在,它會被刪除,並返回 true。如果值不存在,則返回 false。

mySet.delete(2); // 刪除值 2
console.log(mySet); // Output: Set { 1 } 3. 檢查是否存在(Has)

3. 檢查是否存在(Has)

可以使用 has() 方法檢查 Set 中是否包含特定的值。返回值為 true 或 false。

console.log(mySet.has(1)); // Output: true
console.log(mySet.has(2)); // Output: false

4. 清空(Clear)

可以使用 clear() 方法刪除 Set 中的所有值,使其變為空集。

mySet.clear();
console.log(mySet); // Output: Set {}

5. 更新(Update)

雖然 Set 不能直接「更新」值(即不能直接修改已存在的值),但可以通過刪除舊值並添加新值來實現更新效果。

// 模擬更新
mySet.delete(1);
mySet.add(3); // 添加新的值

console.log(mySet); // Output: Set { 3 }

6. 迭代(Iteration)

可以使用 forEach 方法或 for…of 循環來遍歷 Set 中的所有值。

mySet.forEach((value) => {
  console.log(value);
});

for (const value of mySet) {
  console.log(value);
}

總結

  • Set 是可變的,允許添加、刪除和清空元素。
  • Set 中的元素是唯一的,不能直接更新已存在的元素,但可以刪除並添加新的元素來模擬更新。
  • 使用 Set 可以高效地進行查找、添加和刪除操作,適合需要保證唯一性的場景。

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以邮件至 kimfei2014@gmail.com
github