Map.prototype.forEach()

El método forEach() ejecuta una función por cada par clave / valor en el objeto Map, en orden de inserción.

Sintaxis

myMap.forEach(callback[, thisArg])

Parámetros

callback
Función ejecutada en cada elemento.
thisArg
Valor a usar por la funcion callback.

Valor de Retorno

Descripción

El método forEach ejecuta la devolución de llamada (callback) proporcionada una vez para cada clave del mapa que realmente exista. No se invoca para las claves que se han eliminado. Sin embargo, se ejecuta para los valores que están presentes pero tienen el valor indefinido (undefined).

La función (callback) es invocada con 3 argumentos:

  • valor del elemento
  • clave del elemento
  • El objeto utilizado

Si se provee un parámetro thisArg al método forEach, pasará al callback cuando sea invocado, para ser utilizado como su valor this. De otra manera, el valor undefined pasará para ser usado como su valor this. El valor this finalmente observable por el callback se determina de acuerdo a las reglas usuales para determinar la visibilidad de this por una función.

Cada valor es usado una vez, excepto en este caso cuando es eliminado y agregado de nuevo antes de que el forEach haya terminado. callback no es invocado para valores eliminados antes de que sean usados. 

El método forEach ejecuta la función callback una vez para cada elemento en el objeto Map; No se retornan valores.

Ejemplos

Imprimiendo el contenido de un objeto Map

El siguiente código imprime una línea por cada elemento en el objeto Map:

function logMapElements(value, key, map) {
    console.log(`m[${key}] = ${value}`);
}
new Map([['foo', 3], ['bar', {}], ['baz', undefined]]).forEach(logMapElements);
// logs:
// "m[foo] = 3"
// "m[bar] = [object Object]"
// "m[baz] = undefined"

Especificaciones

Compatibilidad con navegadores

BCD tables only load in the browser

Véase también