JavaScript
Tutorial JavaScript: Mapas con Map
JavaScript mapas: creación y uso efectivo. Aprende a crear y usar mapas en JavaScript con ejemplos prácticos y detallados.
Aprende JavaScript GRATIS y certifícateEl objeto Map en JavaScript es una colección de pares clave-valor que permite guardar y manipular datos de manera eficiente y ordenada. A diferencia de los objetos y arrays convencionales, Map permite utilizar cualquier valor (ya sea un objeto, una función o un valor primitivo) como clave y no solamente strings o números, lo que amplía sus posibilidades de uso. Además, Map mantiene el orden de inserción de los elementos, facilitando la iteración de los elementos según su orden de inserción.
Creación de un objeto Map
Para crear un objeto Map se utiliza la palabra clave new
junto con la clase Map
:
const miMapa = new Map();
También es posible crear un Map e inicializarlo con pares clave-valor utilizando un array anidado como argumento:
const miMapa = new Map([
["clave1", "valor1"],
["clave2", "valor2"],
["clave3", "valor3"]
]);
Métodos y propiedades de un objeto Map
Map cuenta con varios métodos y propiedades útiles para trabajar con sus elementos.
size
: Propiedad que devuelve la cantidad de pares clave valor almacenados en el Map.
console.log(miMapa.size); // 3
set(key, value)
: Método que añade un nuevo par clave-valor al Map. Si ya existe un elemento con la misma clave, su valor se actualizará con el nuevo valor proporcionado.
miMapa.set("clave4", "valor4");
console.log(miMapa.size); // 4
get(key)
: Método que devuelve el valor asociado a la clave proporcionada. Si la clave no existe en el Map, devuelveundefined
.
console.log(miMapa.get("clave2")); // "valor2"
console.log(miMapa.get("clave_inexistente")); // undefined
has(key)
: Método que devuelvetrue
si el Map contiene un elemento con la clave dada yfalse
en caso contrario.
console.log(miMapa.has("clave3")); // true
delete(key)
: Método que elimina el par clave-valor del Map según la clave proporcionada. Retornatrue
si se ha eliminado con éxito, yfalse
si la clave no se encuentra en el Map.
miMapa.delete("clave1");
console.log(miMapa.has("clave1")); // false
clear()
: Método que elimina todos los pares clave-valor del Map.
miMapa.clear();
console.log(miMapa.size); // 0
Iteración de un objeto Map
Map ofrece varios métodos para iterar sus elementos de forma sencilla y eficiente.
keys()
: Método que devuelve un objeto iterable con las claves del Map en el orden de inserción.
for (const clave of miMapa.keys()) {
console.log(clave);
}
// Salida:
// clave2
// clave3
// clave4
values()
: Método que devuelve un objeto iterable con los valores del Map en el orden de inserción.
for (const valor of miMapa.values()) {
console.log(valor);
}
// Salida:
// valor2
// valor3
// valor4
entries()
: Método que devuelve un objeto iterable con arrays de pares[clave, valor]
en el orden de inserción.
for (const entrada of miMapa.entries()) {
console.log(entrada);
}
// Salida:
// ["clave2", "valor2"]
// ["clave3", "valor3"]
// ["clave4", "valor4"]
forEach(callback[, thisArg])
: Método que ejecuta una función callback para cada par clave-valor del Map, en el orden de inserción. Opcionalmente, se puede proporcionar el objetothisArg
para utilizarlo comothis
dentro del callback.
miMapa.forEach((valor, clave, mapa) => {
console.log(`Clave: ${clave}, Valor: ${valor}`);
});
También es posible utilizar el operador for...of
directamente en un objeto Map, lo cual es equivalente a utilizar el método entries()
:
for (const [clave, valor] of miMapa) {
console.log(`Clave: ${clave}, Valor: ${valor}`);
}
En resumen, el objeto Map en JavaScript es una estructura de datos versátil y eficiente que permite almacenar y manipular pares clave-valor de manera ordenada, con múltiples métodos para iterar, agregar, actualizar y eliminar elementos de la colección de forma sencilla y clara.
Ejercicios de esta lección Mapas con Map
Evalúa tus conocimientos de esta lección Mapas con Map con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.
Funciones flecha
Polimorfismo
Array
Transformación con map()
Introducción a JavaScript
Gestor de tareas con JavaScript
Manipulación DOM
Funciones
Funciones flecha
Async / Await
Creación y uso de variables
Excepciones
Promises
Funciones cierre (closure)
Herencia
Herencia
Estructuras de control
Selección de elementos DOM
Modificación de elementos DOM
Filtrado con filter() y find()
Funciones cierre (closure)
Funciones
Mapas con Map
Reducción con reduce()
Callbacks
Manipulación DOM
Promises
Async / Await
Eventos del DOM
Async / Await
Promises
Filtrado con filter() y find()
Callbacks
Creación de clases y objetos Restaurante
Reducción con reduce()
Filtrado con filter() y find()
Reducción con reduce()
Conjuntos con Set
Herencia de clases
Eventos del DOM
Clases y objetos
Modificación de elementos DOM
Mapas con Map
Funciones
Tipos de datos
Clases y objetos
Array
Conjuntos con Set
Array
Encapsulación
Clases y objetos
Uso de operadores
Uso de operadores
Estructuras de control
Excepciones
Transformación con map()
Funciones flecha
Selección de elementos DOM
Encapsulación
Mapas con Map
Creación y uso de variables
Polimorfismo
Tipos de datos
Estructuras de control
Todas las lecciones de JavaScript
Accede a todas las lecciones de JavaScript y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.
Introducción A Javascript
Sintaxis
Tipos De Datos
Sintaxis
Variables
Sintaxis
Operadores
Sintaxis
Estructuras De Control
Sintaxis
Funciones
Sintaxis
Funciones Cierre (Closure)
Sintaxis
Funciones Flecha
Programación Funcional
Filtrado Con Filter() Y Find()
Programación Funcional
Transformación Con Map()
Programación Funcional
Reducción Con Reduce()
Programación Funcional
Clases Y Objetos
Programación Orientada A Objetos
Excepciones
Programación Orientada A Objetos
Encapsulación
Programación Orientada A Objetos
Herencia
Programación Orientada A Objetos
Polimorfismo
Programación Orientada A Objetos
Array
Estructuras De Datos
Conjuntos Con Set
Estructuras De Datos
Mapas Con Map
Estructuras De Datos
Manipulación Dom
Dom
Selección De Elementos Dom
Dom
Modificación De Elementos Dom
Dom
Eventos Del Dom
Dom
Callbacks
Programación Asíncrona
Promises
Programación Asíncrona
Async / Await
Programación Asíncrona
Certificados de superación de JavaScript
Supera todos los ejercicios de programación del curso de JavaScript y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.
En esta lección
Objetivos de aprendizaje de esta lección
- Entender qué es un
Map
en JavaScript y cómo se diferencia de otros objetos como Arrays u objetos literales. - Conocer las diferentes formas de crear un
Map
utilizando el constructorMap
y cómo inicializarlo con pares clave-valor. - Familiarizarse con las propiedades y métodos disponibles para trabajar con
Maps
, comosize
,set(key, value)
,get(key)
,has(key)
,delete(key)
, yclear()
. - Aprender cómo iterar sobre los elementos de un
Map
utilizando los métodoskeys()
,values()
,entries()
, yforEach(callback[, thisArg])
, o mediante un buclefor...of
. - Comprender las ventajas de utilizar
Maps
, como la capacidad de almacenar cualquier tipo de valor como clave, el mantenimiento del orden de inserción y la eficiencia en la manipulación de datos.