JavaScript Set メソッドがベースラインの一部になりました

公開日: 2024 年 6 月 26 日

JavaScript の Set methods を使用して、intersectionunion などのセット演算を実行できるようになりました。

セットは、どのプログラミング言語でも不可欠なデータ構造です。これで、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

組み込みメソッドを使用するようにコードを更新すると、パフォーマンスが向上し、技術的な負債が軽減されます。