Capítulo 9: Estructuras de Datos Especializadas
Este capítulo explora Map y Set, estructuras de datos especializadas más potentes que objetos y arrays en ciertos casos.
9.1. Map: Alternativa a Objetos
Map: Alternativa a Objetoslet mapa = new Map();
// Establecer valores
mapa.set("nombre", "Juan");
mapa.set(1, "uno");
mapa.set({}, "objeto");
// Obtener valores
console.log(mapa.get("nombre")); // "Juan"
console.log(mapa.get(1)); // "uno"
// Verificar existencia
console.log(mapa.has("nombre")); // true
// Eliminar
mapa.delete("nombre");
console.log(mapa.has("nombre")); // false
// Tamaño
console.log(mapa.size); // 2
// Limpiar todo
mapa.clear();
console.log(mapa.size); // 0Ventajas de Map vs Object:
Map vs Object:Claves pueden ser cualquier tipo
Orden de inserción garantizado
Método
.sizepara cantidadMejor rendimiento con muchas operaciones
9.2. Set: Colecciones Únicas
Set: Colecciones Únicas9.3. WeakMap y WeakSet
WeakMap y WeakSet9.4. Métodos de Map
Map9.5. Métodos de Set
Set9.6. Cuándo Usar Map vs Object
Map vs ObjectClaves
Cualquier tipo
String/Symbol
Orden
Garantizado
Incierto
Tamaño
.size
Contar manual
Rendimiento
Mejor para maps
Mejor para pocos datos
JSON
No directo
Nativo
Métodos
.set, .get, .has
Asignación
9.7. Casos Prácticos
Resumen del Capítulo
Map y Set son estructuras especializadas que completan el toolkit de JavaScript para manipulación de datos.
💡 Conceptos Clave:
Map: Alternativa potente a objetos con claves flexibles
Set: Colecciones de valores únicos
WeakMap/WeakSet: Referencias débiles
Métodos: keys(), values(), entries(), forEach()
Operaciones: Unión, intersección, diferencia
🤔 Preguntas de Reflexión:
¿Cuándo usarías Map vs Object?
¿Cómo eliminarías duplicados en un array usando Set?
¿Qué ventajas tiene WeakMap sobre Map?
Crea un cache usando Map.
Implementa operaciones de conjuntos (unión, intersección).
Última actualización
¿Te fue útil?