1
resposta

Resolução

// 1 - Faça uma função que aceite vários arrays como argumentos e
// retorne um único array contendo todos os elementos dos arrays fornecidos, utilizando Spread Operator.

// Dica: é possível usar o spread operator diretamente em um parâmetro de função para
// "espalhar" seu conteúdo, por exemplo function funcaoExemplo(...params).

function espalharArrays(...array) { 
    return [].concat(...array);;
}

const frutas = ['maçã', 'banana', 'uva'];
const animais = ['gato', 'cachorro', 'coelho', 'papagaio'];
const cores = ['azul', 'verde', 'amarelo'];
const objetos = ['cadeira', 'mesa', 'computador'];

console.log(espalharArrays(frutas, animais, cores, objetos));

console.log('-------------------------')

// 2 - Crie um array de números chamado valores. Depois,escreva um programa que some todos os elementos deste array utilizando o método reduce.

const valores = [1, 9, 18]

const soma = valores.reduce((acc, valor) => acc + valor, 0)

let media = soma / valores.length

console.log(media)

console.log('-------------------------')

// 3 - Considere duas listas de cores:

const coresLista1 = ['Vermelho', 'Verde', 'Azul', 'Amarelo', 'Vermelho']

const coresLista2 = ['Laranja', 'Verde', 'Roxo', 'Azul']

console.log('-------------------------')

// Crie um programa que una essas duas listas, removendo cores duplicadas e exiba a lista final.

const coresUnidas = [...coresLista1, ...coresLista2];
console.log(coresUnidas);
const coresUnidasNaoDuplicadas = [...new Set(coresUnidas)];
console.log(coresUnidasNaoDuplicadas);

// 4 - Escreva uma função que receba um array de números e retorne um array contendo apenas os números pares.

const numerosPares = arr => arr.filter(n => n % 2 == 0);

console.log(numerosPares([2, 3, 4, 5, 6, 7]))

console.log('-------------------------')

// 5 - Crie uma função que filtre os números de um array que são múltiplos de 3 e maiores que 5.

const filtrarMultiplosDe3MaioresQue5 = (array) => array.filter(num => num % 3 === 0 && num > 5);

console.log(filtrarMultiplosDe3MaioresQue5([23, 4, 2, 5, 9, 329, 21]))

console.log('-------------------------')

// 6 - Crie uma função que receba um array de números e retorne a soma de todos os elementos.

const retornarSomaDeTodosElementos = (array) => array.reduce((acc, value) => acc + value, 0);
console.log(retornarSomaDeTodosElementos([2, 3, 4, 8, 1])) 
1 resposta

Oi, Maxine! Como vai?

Agradeço por compartilhar.

Gostei bastante da forma como você organizou as funções, usando filter, reduce e Set. A clareza do código mostra que você já está aplicando bem os recursos modernos do JavaScript.

Uma dica interessante para o futuro é usar o método map quando precisar transformar cada item de um array. Veja este exemplo:


const numeros = [1, 2, 3, 4];
const dobrados = numeros.map(n => n * 2);

console.log(dobrados);

Esse código retorna [2, 4, 6, 8], criando um novo array sem alterar o original.

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!