MDN wants to talk to developers like you: https://qsurvey.mozilla.com/s3/8d22564490d8

Map.prototype.forEach()

O método forEach() executa uma função fornecida uma vez para cada par de chave/valor no objeto Map, pela órdem de inserção.

Sintaxe

meuMapa.forEach(callback[, thisArg])

Parâmetros

callback
Função a ser executada para cada elemento.
thisArg
Valor a utilizar como o this quando estiver executando o callback.

Valor de retorno

undefined.

Descrição

O método forEach executa o callback fornecido uma vez para cada chave existente no mapa. Ele não é invocado para as chaves que foram removidas. No entanto, ele é executado para ítens que estão presentes mesmo com o valor undefined.

callback é invocado com três argumentos:

  • o valor do elemento
  • a chave do elemento
  • o Objeto Map que está sendo atravessado

Se um parâmetro thisArg for fornecido ao forEach, ele será passado ao callback quando invocado, e será utilizado como o valor de seu this.  De outra forma, o valor undefined será passado como o valor de seu this.  O valor this observável em última instância por callback é determinado de acordo com as regras comuns para determinar o this sendo visto por uma função.

Cada valor é visitado uma vez, exceto para o caso em que ele foi removido e re-adicionado antes do forEach ter acabado de ser executado. o callback não é invocadp para valores removidos antes de serem visitados. Novos valores adicionados antes do forEach ter acabado serão visitados.

forEach executa a função de callback uma vez para cada elemento no objeto Map; ele não retorna um valor.

Exemplos

Impriminto o conteúdo de um objeto Map

O código a seguir registra uma linha de log para cada elemento no objeto Map:

function registrarElementosDoMapa(valor, chave, mapa) {
    console.log(`m[${chave}] = ${valor}`);
}
new Map([['foo', 3], ['bar', {}], ['baz', undefined]]).forEach(registrarElementosDoMapa);
// logs:
// "m[foo] = 3"
// "m[bar] = [object Object]"
// "m[baz] = undefined"

Especificações

Especificação Status Comentário
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Map.prototype.forEach' in that specification.
Padrão Definição inicial.
ECMAScript Latest Draft (ECMA-262)
The definition of 'Map.prototype.forEach' in that specification.
Rascunho  

Compatibilidade com os navegadores

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 38 25.0 (25.0) 11 25 7.1
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support Não suportado 38 25.0 (25.0) Não suportado Não suportado 8

Veja também

Etiquetas do documento e colaboradores

 Colaboradores desta página: renatoluna
 Última atualização por: renatoluna,