1
resposta

Porque o meu método alternativo de passar o array não funciona?

Fala pessoal, beleza? Sempre tento fazer uma solução B para os problemas a fim de aumentar o aprendizado :) Sobre passar a cópia do array, ele fez dessa maneira:

get negociacoes(){

        return [].concat(this._negociacoes);
    }

Eu tentei fazer dessa forma e, ao invés de me retornar um array, foi me retornado o tamanho (length) do array.

get negociacoes(){

        return [].push(...this._negociacoes);
    }

Porque isso está acontecendo?

1 resposta

Fala ai Folker, tudo bem? Ele está retornando o tamanho do array porque é o retorno da função push, ou seja, a função push ao adicionar um novo elemento no array retorna no novo tamanho do array (novo valor da propriedade length).

Uma solução alternativa poderia ser:

get negociacoes(){
    return [
        ...this._negociacoes
    ];
}

Espero ter ajudado.