Tutorial JS

JS INICIO JS Introducción JS Dónde Salida JS Declaraciones JS Sintaxis JS Comentarios JS Variables JS JS Vamos Constante JS Operadores JS Aritmética JS Tarea JS Tipos de datos JS Funciones JS Objetos JS Eventos JS Cadenas JS Métodos de cadena JS Búsqueda de cadenas JS Plantillas de cadena JS Números JS Métodos numéricos JS Matrices JS Métodos de matriz JS Clasificación de matriz JS Iteración de matriz JS Constante de matriz JS Fechas JS Formatos de fecha JS Métodos de obtención de fecha JS Métodos de configuración de fechas JS Matemáticas JS JS al azar Booleanos JS Comparaciones JS Condiciones JS Interruptor JS Bucle JS para Bucle JS para entrada Bucle JS para de Bucle JS mientras descanso JS Iterables JS Conjuntos JS Mapas JS JS Tipo de Conversión de tipo JS JS bit a bit JS expresión regular Errores JS Alcance JS JS Elevación Modo estricto JS JS esta palabra clave Función de flecha JS Clases JS JSJSON Depuración JS Guía de estilo JS Prácticas recomendadas de JS Errores JS Rendimiento JS Palabras reservadas de JS

Versiones JS

Versiones JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Borde Historia de JS

Objetos JS

Definiciones de objetos Propiedades del objeto Métodos de objetos Visualización de objetos Accesores de objetos Constructores de objetos Prototipos de objetos Objeto iterables Conjuntos de objetos Mapas de objetos Referencia de objeto

Funciones JS

Definiciones de funciones Parámetros de función Invocación de funciones Llamada de función Función Aplicar Cierres de funciones

Clases JS

Introducción a la clase Herencia de clase Clase estática

JS asíncrono

Devoluciones de llamada JS JS asíncrono Promesas JS JS asíncrono/espera

JS HTML DOM

Introducción al DOM Métodos DOM Documento DOM Elementos DOM DOM HTML Formularios DOM DOM CSS Animaciones DOM Eventos DOM Oyente de eventos DOM Navegación DOM Nodos DOM Colecciones DOM Listas de nodos DOM

Lista de materiales del navegador JS

Ventana JS Pantalla JS Ubicación de JS Historia de JS Navegador JS Alerta emergente JS Tiempo JS Galletas JS

API web de JS

Introducción a la API web API de formularios web API de historial web API de almacenamiento web API de trabajo web API de búsqueda web API de geolocalización web

JS AJAX

Introducción a AJAX AJAX XMLHttp Solicitud AJAX Respuesta AJAX Archivo XML AJAX AJAXPHP Ajax ASP Base de datos AJAX Aplicaciones AJAX Ejemplos de AJAX

JSJSON

Introducción JSON Sintaxis JSON JSON frente a XML Tipos de datos JSON Análisis JSON Cadena JSON Objetos JSON Matrices JSON Servidor JSON JSONPHP JSONHTML JSON JSONP

JS frente a jQuery

Selectores jQuery HTML de jQuery CSS de jQuery DOM de jQuery

Gráficos JS

Gráficos JS Lienzo JS JS Trazado Gráfico JS.js Gráfico de Google JS JS D3.js

Ejemplos de JS

Ejemplos de JS JS HTML DOM Entrada HTML JS Objetos JS HTML Eventos JS HTML Navegador JS Editor JS Ejercicios JS Prueba JS Certificado JS

Referencias JS

Objetos JavaScript Objetos HTML DOM


Mapas JavaScript

Un mapa contiene pares clave-valor donde las claves pueden ser cualquier tipo de datos.

Un mapa recuerda el orden de inserción original de las claves.

Un mapa tiene una propiedad que representa el tamaño del mapa.

Métodos de mapa

MétodoDescripción
nuevo mapa()Crea un nuevo objeto de mapa
colocar()Establece el valor de una clave en un mapa
obtener()Obtiene el valor de una clave en un mapa
claro()Elimina todos los elementos de un Mapa
Eliminar()Elimina un elemento de mapa especificado por una clave
posee()Devuelve verdadero si existe una clave en un mapa
para cada()Invoca una devolución de llamada para cada par clave/valor en un mapa
entradas()Devuelve un objeto iterador con los pares [clave, valor] en un mapa
teclas()Devuelve un objeto iterador con las claves en un Mapa
valores()Devuelve un objeto iterador de los valores en un Mapa
PropiedadDescripción
TallaDevuelve el número de elementos del mapa

Cómo crear un mapa

Puede crear un mapa de JavaScript mediante:

  • Pasar una matriz a new Map()
  • Crea un mapa y usa Map.set()

nuevo mapa()

Puede crear un Mapa pasando un Array al new Map()constructor:

Ejemplo

// Create a Map
const fruits = new Map([
  ["apples", 500],
  ["bananas", 300],
  ["oranges", 200]
]);

Mapa.set()

Puede agregar elementos a un Mapa con el set()método:

Ejemplo

// Create a Map
const fruits = new Map();

// Set Map Values
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);

El set()método también se puede utilizar para cambiar los valores de mapa existentes:

Ejemplo

fruits.set("apples", 500);

Mapa.get()

El get()método obtiene el valor de una clave en un Mapa:

Ejemplo

fruits.get("apples");    // Returns 500


Tamaño de mapa

La sizepropiedad devuelve el número de elementos en un Mapa:

Ejemplo

fruits.size;

Mapa.eliminar()

El delete()método elimina un elemento Map:

Ejemplo

fruits.delete("apples");

Mapa.clear()

El clear()método elimina todos los elementos de un Mapa:

Ejemplo

fruits.clear();

Mapa.has()

El has()método devuelve verdadero si existe una clave en un mapa:

Ejemplo

fruits.has("apples");

Prueba esto:

fruits.delete("apples");
fruits.has("apples");

Los mapas son objetos

typeof devuelve el objeto:

Ejemplo

// Returns object:
typeof fruits;

instanceof El mapa devuelve verdadero:

Ejemplo

// Returns true:
fruits instanceof Map;

Objetos JavaScript vs Mapas

Diferencias entre Objetos JavaScript y Mapas:

ObjetoMapa
Iterable No iterable directamente directamente iterable
Tamaño No tiene una propiedad de tamaño Tener una propiedad de tamaño
Tipos de clave Las claves deben ser cadenas (o símbolos) Las claves pueden ser de cualquier tipo de datos.
orden clave Las llaves no están bien ordenadas. Las llaves se ordenan por inserción
valores predeterminados Tener claves predeterminadas No tiene claves predeterminadas

Mapa.paraCada()

El forEach()método invoca una devolución de llamada para cada par clave/valor en un mapa:

Ejemplo

// List all entries
let text = "";
fruits.forEach (function(value, key) {
  text += key + ' = ' + value;
})

Mapa.keys()

El keys()método devuelve un objeto iterador con las claves en un Mapa:

Ejemplo

// List all keys
let veggies = "";
for (const x of fruits.keys()) {
  veggies += x;
}

Mapa.valores()

El valuesmétodo devuelve un objeto iterador con los valores en un Mapa:

Ejemplo

// Sum all values
let total = 0;
for (const x of fruits.values()) {
  total += x;
}

Mapa.entradas()

El entries()método devuelve un objeto iterador con [clave, valores] en un Mapa:

Ejemplo

// List all entries
let text = "";
for (const x of fruits.entries()) {
  text += x;
}

Objetos como claves

Poder usar objetos como llaves es una característica importante del Mapa.

Ejemplo

// Create Objects
const apples = {name: 'Apples'};
const bananas = {name: 'Bananas'};
const oranges = {name: 'Oranges'};

// Create a Map
const fruits = new Map();

// Add new Elements to the Map
fruits.set(apples, 500);
fruits.set(bananas, 300);
fruits.set(oranges, 200);

Recuerde: la clave es un objeto (manzanas), no una cadena ("manzanas"):

Ejemplo

fruits.get("apples");  // Returns undefined

Compatibilidad con navegador

Los mapas de JavaScript son compatibles con todos los navegadores, excepto Internet Explorer:

Chrome Edge Firefox Safari Opera