Boa noite, estou tendo problemas ao inserir a data na aplicação. Se coloco alguma data ímpar, ela é mostrada corretamente no console.log. Porém, se coloco uma data par, o mês tem um decréscimo de uma unidade no console.log. Acredito que seja um erro na minha função TextToDate( ).
class DateHelper {
DateToText(data){
return data.getDate() + "/" + (data.getMonth()+1) + "/" + data.getFullYear()
}
TextToDate(texto){
return new Date(texto.split('-').map((item, indice) => item%2 ? item : item - 1));
}
}
class NegociacaoController {
constructor() {
let $ = document.querySelector.bind(document);
this._inputData = $('#data');
this._inputQtd = $('#quantidade');
this._inputValor = $('#valor');
}
get inputData(){
return this._inputData;
}
get inputQtd(){
return this._inputQtd;
}
get inputValor(){
return this._inputValor;
}
adiciona(event) {
event.preventDefault();
let helper = new DateHelper();
let negociacao = new Negociacao(
helper.TextToDate(this._inputData.value),
this._inputQtd.value,
this.inputValor.value
)
console.log(negociacao);
console.log(helper.DateToText(negociacao.data));
}
}