Categorias
Artigos JavaScript

Dominando a função map( )

Para que serve a função map( ) no JavaScript?

Se pudéssemos resumir a função map( ) no JavaScript em uma frase, seria:

x.map(y) – para cada item do array x, aplique uma função y
  • A função map( ) mapeia cada item de um array a uma determinada função.
  • Retona um array de mesmo tamanho com valores transformados pela função.
  • Sintaxe: objeto.map(função, índice)

Por exemplo, vamos criar uma função que normalize notas de estudantes:

Texto

Descrição gerada automaticamente

Agora vamos pegar todas as notas:

Podemos verificar qual a maior nota rodando:

Interface gráfica do usuário, Texto

Descrição gerada automaticamente

Agora normalizamos as notas usando:

Interface gráfica do usuário, Texto

Descrição gerada automaticamente com confiança média

Neste exemplo, usamos map( ) para aplicar uma função que normaliza os dados. Veja que para esse exemplo, optamos por não utilizar o índice (apenas um argumento foi passado para a função map).

Podemos ver todas as notas executando:

Uma forma mais simples de se fazer isso seria separando a função que normaliza aplicando-a a uma variável, seguido do mapeamento delas.

Interface gráfica do usuário, Texto, Aplicativo, chat ou mensagem de texto

Descrição gerada automaticamente

Note que usamos map( ) duas vezes: na primeira coletamos apenas as notas do objeto estudantes e em seguida aplicamos a função normaliza para cada nota obtida.

Perceba que podemos até mesmo aplicar map( ) em outras funções que definimos anteriormente como por exemplo, o código que calcula a maior nota, que era feito assim:

Pode ser refatorado usando uma única linha:

Quer aprender mais sobre Desenvolvimento Web?

Dá uma olhada nesses cursos disponíveis a partir de R$ 27,90 e ainda dá uma moral pra esse pobre professor 😉

Por Diego Mariano

Doutor em Bioinformática pela Universidade Federal de Minas Gerais com atuação na área de ciência de dados e aprendizado de máquina aplicados ao aperfeiçoamento de enzimas usadas na produção de biocombustíveis. Mestre em Bioinformática, também pela UFMG, atuando na área de desenvolvimento de sistemas Web para montagem de genomas. Atualmente realiza estágio pós-doutoral no Departamento de Ciência da Computação da UFMG com foco em desenvolvimento de sistemas Web para Bioinformática, análise exploratória e visualização de dados. Tem conhecimentos nas linguagens: PHP, JavaScript, Python, R, Perl, HTML, CSS e SQL.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

error

Compartilhe este post!

Facebook
YouTube
LinkedIn
Instagram