ES6 introdujo Map y Set para resolver limitaciones con Objetos y Arrays planos.
Set (Valores Únicos)
La forma más rápida de eliminar duplicados.
javascript
const emails = ["[email protected]", "[email protected]", "[email protected]"];
const emailsUnicos = [...new Set(emails)];
console.log(emailsUnicos); // ["[email protected]", "[email protected]"]Map (Mejor Clave-Valor)
¿Por qué Map en lugar de Object?
- Las claves pueden ser de CUALQUIER tipo (Objetos, Funciones), no solo Strings.
- Preserva el orden de inserción.
- Tiene una propiedad
.sizeincorporada (No necesitas Object.keys().length).
javascript
const cache = new Map();
const usuario = { id: 1 };
// ¡Usando un objeto como clave!
cache.set(usuario, "Datos del Usuario");
console.log(cache.get(usuario)); // "Datos del Usuario"