2
respostas

[Dúvida] Quando utilizar cada método?

Olá pessoal, tudo bem?

Acredito que essa seja a duvida de algumas pessoas (como eu, por exemplo). Venho estudando a uns meses JS e sempre fico com duvida onde aplicar esses métodos de arrays, quais possíveis cenários para usar cada um.

Caso alguém puder explicar exemplificando possiveis situações de cada método, ficaria grato.

2 respostas

Olá! Claro, ficarei feliz em ajudar a esclarecer como usar alguns métodos de arrays em JavaScript e em quais situações eles podem ser úteis. Aqui estão alguns métodos com explicações e exemplos:

  1. map(): Utilizado para transformar cada elemento de um array e criar um novo array resultante.

    const numeros = [1, 2, 3, 4, 5];
    
    const dobrados = numeros.map(numero => numero * 2);
    // Resultado: [2, 4, 6, 8, 10]
    
  2. filter(): Serve para criar um novo array contendo apenas os elementos que atendem a uma determinada condição.

    const numeros = [1, 2, 3, 4, 5];
    
    const pares = numeros.filter(numero => numero % 2 === 0);
    // Resultado: [2, 4]
    
  3. reduce(): Utilizado para reduzir um array a um único valor, acumulando os resultados.

    const numeros = [1, 2, 3, 4, 5];
    
    const soma = numeros.reduce((acumulador, numero) => acumulador + numero, 0);
    // Resultado: 15
    
  4. forEach(): Executa uma função para cada elemento do array, sem retornar um novo array.

    const frutas = ['maçã', 'banana', 'laranja'];
    
    frutas.forEach(fruta => console.log(fruta));
    // Imprime cada fruta no console
    
  5. find(): Retorna o primeiro elemento que satisfaça uma condição específica.

    const numeros = [1, 2, 3, 4, 5];
    
    const numeroMaiorQueTres = numeros.find(numero => numero > 3);
    // Resultado: 4
    
  6. some(): Verifica se pelo menos um elemento do array atende a uma condição.

    const numeros = [1, 2, 3, 4, 5];
    
    const temNumeroPar = numeros.some(numero => numero % 2 === 0);
    // Resultado: true
    
  7. every(): Útil quando você deseja verificar se todos os elementos do array atendem a uma condição específica.

    // Exemplo: Verificando se todos os números em uma lista são positivos
    const numeros = [2, 4, 6, 8, 10];
    const saoTodosPositivos = numeros.every(numero => numero > 0);
    
  8. indexOf(): Aplicável quando você precisa encontrar a posição de um elemento específico no array.

    // Exemplo: Encontrando a posição da palavra "banana" em uma lista de frutas
    const frutas = ['maçã', 'banana', 'laranja'];
    const indiceBanana = frutas.indexOf('banana');
    
  9. lastIndexOf(): Útil quando você precisa encontrar a última ocorrência de um elemento em um array.

    // Exemplo: Encontrando a posição da última ocorrência da palavra "banana"
    const frutas = ['maçã', 'banana', 'laranja', 'banana'];
    const indiceUltimaBanana = frutas.lastIndexOf('banana');
    
  10. slice(): Aplicável quando você deseja extrair uma parte do array, criando um novo array sem modificar o array original.

    // Exemplo: Obtendo uma sublista de uma lista de números
    const numeros = [1, 2, 3, 4, 5];
    const subArray = numeros.slice(2, 4);
    
  11. splice(): Útil quando você precisa alterar o conteúdo do array, removendo ou substituindo elementos existentes e/ou adicionando novos elementos.

    // Exemplo: Removendo o segundo elemento e substituindo por dois novos elementos
    const numeros = [1, 2, 3, 4, 5];
    numeros.splice(1, 1, 10, 11);
    
  12. reverse(): Aplicável quando você precisa inverter a ordem dos elementos no array.

    // Exemplo: Invertendo a ordem de uma lista de caracteres
    const caracteres = ['a', 'b', 'c', 'd'];
    const caracteresInvertidos = caracteres.reverse();
    

Estes são exemplos de situações em que esses métodos podem ser aplicados. Lembre-se de que a escolha do método depende do que você está tentando alcançar em seu código e das características específicas do problema que está resolvendo.

Caso tenha conseguido esclarecer suas dúvidas, fico feliz em ter ajudado. Estou à disposição para qualquer outra questão que possa surgir. Um abraço! Se este post foi útil, por favor, marque como solucionado ✓. Desejo a você excelentes estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software