Sets
Un Set es una colección con una sola regla que la define: todos sus valores son únicos. Si añades un duplicado no pasa nada — ya estaba ahí.
let numbers = new Set([1, 2, 3, 2, 1]); console.log(numbers); numbers.add(4); console.log(numbers); console.log(numbers.has(2)); console.log(numbers.size);
Set { 1, 2, 3 }
Set { 1, 2, 3, 4 }
true
4new Set([1, 2, 3, 2, 1]) se reduce a solo tres valores únicos en el momento en que se crea. has() comprueba si algo pertenece al set, y size (no length) te da el conteo.
Convertir entre Set y array
Los sets no tienen métodos de array como map() o filter() directamente — conviértelos con la sintaxis de propagación [...set] cuando los necesites.
let unique = [...new Set([1, 1, 2, 2, 3])]; console.log(unique);
[ 1, 2, 3 ]
Esto es genuinamente útil, no una curiosidad: eliminar duplicados de un array es exactamente este patrón — envuélvelo en un Set para eliminar duplicados, y luego vuelve a expandirlo en un array normal.
Siguiente: sentencias condicionales — hacer que tu código realmente se bifurque según un valor.
Ejercicio de práctica
Crea numbers = new Set([1, 2, 2, 3, 3, 3]). Imprime numbers.size, y luego imprime si numbers tiene el valor 2 usando numbers.has(2).