A data, a quantidade e o valor não sumiram quando apertei incluir que nem aconteceu com o professor Flavio, é para isso acontecer? Eu uso Windows.
Meu código do NegociacaoController.js está assim:
class NegociacaoController {
  constructor() {
    let $ = document.querySelector.bind(document);
    this._inputData = $('#data');
    this._inputQuantidade = $('#quantidade');
    this._inputValor = $('#valor');
  }
  adiciona(event) {
    event.preventDefault();
    let negociacao = new Negociacao(
      DateHelper.textoParaData(this._inputData.value),
      this._inputQuantidade.value,
      this._inputValor.value
    );
    console.log(negociacao)
    console.log(DateHelper.dataParaTexto(negociacao.data));
  }
}Meu código do DataHelper está assim:
class DateHelper {
  constructor() {
    throw new Error('Está classe não pode ser instanciada');
  }
  static dataParaTexto(data) {
    return `${data.getDate()}/${data.getMonth() + 1}/${data.getFullYear()}`;
  }
  static textoParaData(texto) {
    if (!/\d{4}-\d{2}-\d{2}/.test(texto))
      throw new Error('Deve estar no formato aaaa-mm-dd');
    return new Date(...texto.split('-').map((item, indice) => item - indice % 2));
  }
}E meu código de Negociacao.js esta assim:
class Negociacao {
  constructor(data, quantidade, valor) {
    this._data = new Date(data.getTime());
    this._quantidade = quantidade;
    this._valor = valor;
    Object.freeze(this);
  }
  get volume() {
    return this._quantidade * this._valor;
  }
  get data() {
    return new Date(this._data.getTime());
  }
  get quantidade() {
    return this._quantidade;
  }
  get valor() {
    return this._valor;
  }
}