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

Uso da # na criação de propriedades de classe

Na aula 7 do primeiro módulo do curso de Typescript I o professor criar uma classe com várias propriedades iniciada com #, isso é uma convenção do JS ?

Não conhecia essa e não encontrei informações na internet.

Código digitado na aula

class Negociacao {
    #data;
    #quantidade;
    #valor;
    constructor(data, quantidade, valor) {
      this.#data = data;
      this.#quantidade = quantidade;
      this.#valor = valor;
    }
}
2 respostas
solução!

Na verdade o uso do # para propriedades privadas não é uma convenção, e sim o uso do js mais moderno disponível. Essa é uma característica que é comum em outras linguagens de programação e não havia até recentemente o equivalente no JS.

A convenção anterior e bastante difundida do JS para tentar contornar essa caracteristica da linguagem era o uso do _antesDoNomeDaPropriedade.

Como falado pelo professor Flávio esse recurso é basicamente o JS no seu ápice, acontece que tal uso ainda não é amplamente suportado e nem difundido, Os materiais que eu já vi estão em inglês.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Private_class_fields

https://www.sitepoint.com/javascript-private-class-fields/

Joia! Muito obrigado pela resposta João