8 métodos de conjunto de JavaScript que debe dominar hoy

Un conjunto de JavaScript es una colección de valores que son únicos.

Los conjuntos pueden contener valores de cualquier tipo de datos. Pueden ser primitivas simples, como enteros o cadenas, etc., o tipos complejos como matrices o literales de objeto. Los valores del conjunto solo pueden aparecer una vez.

En este artículo, aprenderá ocho métodos de conjuntos de JavaScript que debe dominar hoy.

1. Cómo crear un nuevo conjunto en JavaScript

Puede crear un nuevo objeto Set utilizando el nuevo constructor Set () . El objeto Set almacena valores únicos de cualquier tipo de datos. Este constructor acepta un objeto iterable como parámetro.

const setObj = new Set([21, 34, 35, 56, 23]);
console.log(setObj);

Producción:

Set(5) { 21, 34, 35, 56, 23 }

Si no especifica nada en el parámetro, se crea un nuevo conjunto vacío.

const setObj = new Set();
console.log(setObj);

Producción:

Set(0) {}

Si intenta crear un conjunto con elementos repetidos, los elementos duplicados se eliminarán y se devolverá un conjunto único.

const setObj = new Set([1, 2, 3, 1, 2, 3]);
console.log(setObj);

Producción:

Set(3) { 1, 2, 3 }

También puede crear un conjunto utilizando tipos de datos mixtos.

const setObj = new Set([1, 2, "Hello", [45, 67, 78]]);
console.log(setObj);

Producción:

Set(4) { 1, 2, 'Hello', [ 45, 67, 78 ] }

2. Cómo agregar elementos nuevos a un objeto de conjunto

Puede agregar un nuevo elemento al final del objeto Set usando el método add () . Este método acepta el valor del elemento para agregar al objeto Set como parámetro y devuelve el nuevo objeto Set con valor agregado.

const setObj = new Set();
setObj.add("Welcome");
setObj.add("to");
setObj.add("MUO");
console.log(setObj);

Producción:

Set(3) { 'Welcome', 'to', 'MUO' }

Puede pasar directamente el valor como un parámetro, o puede pasar la variable como una en su lugar.

const setObj = new Set();
// Appending value to a Set object
setObj.add("Welcome");
const var1 = "to";
const var2 = "MUO";
// Appending variable to a Set object
setObj.add(var1);
setObj.add(var2);
console.log(setObj);

Producción:

Set(3) { 'Welcome', 'to', 'MUO' }

El método add () también admite el encadenamiento.

const setObj = new Set();
// Chaining
setObj.add(1).add(2).add(3);
console.log(setObj);

Producción:

Set(3) { 1, 2, 3 }

Si intenta agregar elementos duplicados, solo se guardará la primera instancia del elemento.

const setObj = new Set();
setObj.add(1);
setObj.add(2);
setObj.add(3);
setObj.add("M");
setObj.add("U");
setObj.add("O");
setObj.add(1);
setObj.add(2);
setObj.add(3);
console.log(setObj);

Producción:

Set(6) { 1, 2, 3, 'M', 'U', 'O' }

3. Cómo eliminar todos los elementos de un objeto de conjunto

Puede eliminar todos los elementos de un objeto Set utilizando el método clear () . Este método elimina todos los elementos y devuelve undefined .

const setObj = new Set([1, 2, 3, 4, 5]);
console.log("Size of the Set object: " + setObj.size);
console.log(setObj);
setObj.clear();
console.log("Size of the Set object after clearing elements: " + setObj.size);
console.log(setObj);

Producción:

Size of the Set object: 5
Set(5) { 1, 2, 3, 4, 5 }
Size of the Set object after clearing elements: 0
Set(0) {}

4. Cómo eliminar un elemento específico de un objeto de conjunto

Puede eliminar un elemento específico de un objeto Set (si existe) usando el método delete () . Este método acepta el valor que se eliminará del conjunto. Si se encuentra el valor, el método devuelve verdadero . De lo contrario, será falso .

const setObj = new Set([1, 2, 3, 4, 5]);
console.log("Initial Set:");
console.log(setObj);
setObj.delete(3);
console.log("Set after deleting 3");
console.log(setObj);

Producción:

Initial Set:
Set(5) { 1, 2, 3, 4, 5 }
Set after deleting 3
Set(4) { 1, 2, 4, 5 }

5. Cómo comprobar si existe un elemento en un conjunto

Puede verificar si un elemento existe en un objeto Set usando el método has () . Este método acepta el valor como parámetro para probar la presencia en el objeto Set. Si se encuentra el elemento, el método devuelve verdadero ; de lo contrario, será falso .

const setObj = new Set(["Welcome", "to", "MUO"]);
console.log(setObj.has("MUO"));
console.log(setObj.has("MakeUseOf"));

Producción:

true
false

6. ¿Cuál es el método de entradas () en el objeto de conjunto de JavaScript?

Según los documentos web oficiales de MDN :

«El método entries () devuelve un nuevo objeto Iterator que contiene una matriz de [valor, valor] para cada elemento del objeto Set, en orden de inserción. Para los objetos Set, no hay una clave como en los objetos Map. Sin embargo, mantener la API es similar al objeto Map, cada entrada tiene el mismo valor para su clave y valor aquí, de modo que se devuelve una matriz [valor, valor] «.

const setObj = new Set(["Welcome", "to", "MUO"]);
for(let entry of setObj.entries()) {
console.log(entry);
}

Producción:

[ 'Welcome', 'Welcome' ]
[ 'to', 'to' ]
[ 'MUO', 'MUO' ]
const setObj = new Set(["Welcome", "to", "MUO"]);
for(let [key, value] of setObj.entries()) {
console.log(value);
}

Producción:

Welcome
to
MUO

Las claves y los valores del conjunto son idénticos.

const setObj = new Set(["Welcome", "to", "MUO"]);
for(let [key, value] of setObj.entries()) {
console.log(key === value);
}

Producción:

true
true
true

7. ¿Cuál es el método forEach () en el objeto de conjunto de JavaScript?

El método forEach () invoca una función para cada elemento del objeto Set. Este método devuelve indefinido .

const setObj = new Set([1, 2, 3, 4, 5]);
let sum = 0;
setObj.forEach(function(element) {
sum += element;
});
console.log(sum);

Producción:

15

8. ¿Cuál es el método values ​​() en el objeto de conjunto de JavaScript?

El método values ​​() devuelve un objeto Iterator que contiene todos los valores de un conjunto, y lo hace en orden de inserción.

const setObj = new Set([1, 2, 3, 4, 5]);
const iteratorObj = setObj.values();
for (let value of iteratorObj) {
console.log(value);
}

Producción:

1
2
3
4
5

Nota : un objeto Set en JavaScript no tiene claves. Pero para hacer que Sets sea compatible con Maps, el método keys () se usa como un alias para el método values ​​() . El método keys () se comporta exactamente igual que el método values ​​() .

Ahora sabe cómo crear conjuntos en JavaScript

Así que ahí lo tienes. Después de leer este artículo, debería tener mucho que le ayude a dominar la creación de conjuntos en JavaScript.

La creación de conjuntos es crucial para cualquier programador que busque mejorar su juego. Una vez que haya dominado esto, puede pasar a perfeccionar otras habilidades, como crear matrices.

FUENTE: https://www.makeuseof.com/javascript-set-methods-to-master/

Otras entradas que pueden interesarte

Mauricio Valderrama Escrito por:

2 comentarios

  1. William
    31 octubre, 2021
    Responder

    Gracias por este consejo.

  2. Ramona
    31 octubre, 2021
    Responder

    Excelente, puedo implementarlos.

Responder a William Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *