發布日期:2024 年 6 月 26 日
您現在可以使用 JavaScript Set
methods
執行 intersection
、union
等集合運算。
集合是任何程式語言中不可或缺的資料結構。您現在可以使用 JavaScript 內建的方法執行集合運算。使用下列方法簡化集合運算:
intersection()
intersection()
會傳回新集合,其中包含此集合和指定集合的元素。
const odds = new Set([1, 3, 5, 7, 9]);
const squares = new Set([1, 4, 9]);
console.log(odds.intersection(squares)); // Set(2) { 1, 9 }
union()
union()
會傳回新集合,其中包含此集合和指定集合中的所有元素。
const evens = new Set([2, 4, 6, 8]);
const squares = new Set([1, 4, 9]);
console.log(evens.union(squares)); // Set(6) { 2, 4, 6, 8, 1, 9 }
difference()
difference()
會傳回新集合,其中包含此集合中的元素,但不包含指定集合中的元素。
const odds = new Set([1, 3, 5, 7, 9]);
const squares = new Set([1, 4, 9]);
console.log(odds.difference(squares)); // Set(3) { 3, 5, 7 }
symmetricDifference()
symmetricDifference()
會傳回新集合,其中包含此集合或指定集合中的元素,但兩者皆不包含。
const evens = new Set([2, 4, 6, 8]);
const squares = new Set([1, 4, 9]);
console.log(evens.symmetricDifference(squares)); // Set(5) { 2, 6, 8, 1, 9 }
isSubsetOf()
isSubsetOf()
會傳回布林值,指出此集合的所有元素是否都在指定集合中。
const fours = new Set([4, 8, 12, 16]);
const evens = new Set([2, 4, 6, 8, 10, 12, 14, 16, 18]);
console.log(fours.isSubsetOf(evens)); // true
isSupersetOf()
isSupersetOf()
會傳回布林值,指出指定集合的所有元素是否都位於這個集合中。
const evens = new Set([2, 4, 6, 8, 10, 12, 14, 16, 18]);
const fours = new Set([4, 8, 12, 16]);
console.log(evens.isSupersetOf(fours)); // true
isDisjointFrom()
isDisjointFrom()
傳回布林值,指出此集合是否與指定集合沒有共同元素。
const primes = new Set([2, 3, 5, 7, 11, 13, 17, 19]);
const squares = new Set([1, 4, 9, 16]);
console.log(primes.isDisjointFrom(squares)); // true
更新程式碼以使用內建方法,可改善效能並減少技術債務。