Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Resolvi através de uma Classe

Olá, bom dia. Tudo bem?

No exercício vocês fornecem o seguinte código e pedem para juntarmos as listas sem ter que chamar a função duas vezes.

function exibeNoConsole(lista) {
    lista.forEach(item => console.log(item));
}

let listaDeNomes1 = ['Flávio', 'Rogers', 'Júlia'];
exibeNoConsole(listaDeNomes1);
let listaDeNomes2 = ['Vieira', 'Fernanda', 'Gerson'];
exibeNoConsole(listaDeNomes2);

Eu tentei resolver seguindo POO, mas não sei se segui corretamente. Ficou assim o meu código:

class listaNomes{

    constructor() {
        this._listas = [];
    }

    adicionaNaLista (lista){
        this._listas.push(lista);
    }

    imprimeLista(lista) {
        lista.forEach(item => console.log(item));
    }
}

let listaDeNomes1 = ['Flávio', 'Rogers', 'Júlia'];
let listaDeNomes2 = ['Vieira', 'Fernanda', 'Gerson'];

this._relacionaNomes = new listaNomes;
this._relacionaNomes.imprimeLista([].concat(listaDeNomes1,listaDeNomes2));

Agradeço se puderem avaliar minha resolução.

2 respostas
solução!

Adriano, boa tarde!

Ótima solução, uma pequena observação é que a função adicionaNaLista() ficou inutilizada. Uma outra forma seria ter feito a concatenação no parâmetro da função

function exibeNoConsole(lista) {
    lista.forEach(item => console.log(item));
}

let listaDeNomes1 = ['Flávio', 'Rogers', 'Júlia'];
let listaDeNomes2 = ['Vieira', 'Fernanda', 'Gerson'];
exibeNoConsole([].concat(listaDeNomes1, listaDeNomes2));

Assim como você fez na classe.

Foi uma ótima abstração!

Continue assim e bons estudos!

Boa Felipe, valeu pela dica!!!

Abs.

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