Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

estrutura da classe

Olá, percebi que ao cria a classe Negociacao, os parâmetros foram declarados antes de atribuir o "this." , segue o exemplo...

class Negociacao {

    #data
    #qtd

    construct(data, qtd){
            this.#data = data;
            this.#qtd = qtd;
    }

}

Minha dúvida é: essa estrutura de declarar os atributos antes do construct vem do JavaScript ou é do TypeScrip? Porque fiz os cursos de POO em JS e não me lembro dessa estrutura. Obrigado.

1 resposta
solução!

Olá, Nikolas, tudo bem?

Essa estrutura vem sim do Javascript! Nas primeiras aulas do curso de JS POO, o instrutor declara os atributos como abaixo:

export class Cliente{
    nome;
    _cpf;

    constructor(nome, cpf){
        this.nome = nome;
        this._cpf = cpf;
    }

}

Mas depois nós vemos que a própria documentação da MDN recomenda que incializemos os atributos apenas dentro do construtor.

Entretanto, para declarar atributos privados com a hashtag # no JS, precisamos declará-las fora do construtor. E da mesma forma, no TypeScript, também precisamos declarar os atributos fora do construtor quando utilizarmos a palavra-chave private.

Espero ter ajudado! Bons estudos :)