Los métodos de Conjunto de JavaScript ahora forman parte de Baseline

Ahora puedes usar JavaScript Set methods para realizar operaciones de conjuntos, como intersection, union y más.

Navegadores compatibles

  • Chrome: 122.
  • Borde: 122
  • Firefox: 127
  • Safari: 17.

Origen

Los conjuntos son una estructura de datos esencial en cualquier lenguaje de programación. Por ello, ahora puedes usar los métodos integrados de JavaScript para realizar operaciones de conjuntos. Simplifica tu conjunto las operaciones con los siguientes métodos:

intersection()

intersection() devuelve un nuevo conjunto que contiene elementos tanto en este conjunto como en el dado.

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() devuelve un nuevo conjunto que contiene todos los elementos de este conjunto y el dado.

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() muestra un nuevo conjunto que contiene elementos en este conjunto, pero no en el conjunto dado.

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() devuelve un conjunto nuevo con elementos que se encuentran en este conjunto o en el pero no en ambos.

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() devuelve un valor booleano que indica si todos los elementos de este conjunto están en el conjunto dado.

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() devuelve un valor booleano que indica si todos los elementos del conjunto dado están en este conjunto.

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() Devuelve un valor booleano que indica si este conjunto no tiene elementos en común con el conjunto determinado.

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

Actualizar el código para usar los métodos integrados mejora el rendimiento y reduce la deuda técnica.