Bom dia,
Diferente do que foi apresentado, o mês no meu console aparece como +2 acrescido. a Data e ano também são alterados. Por exemplo , ao inserir 12/11/2020 , o retorno no console é " JAN 11 2021"
Isso ocorre apenas quando tento utilizar o spread operator. Caso não utilize, a data retorna com o erro esperado, apenas o mês +1. Por exemplo, ao inserir 12/11/2020, o retorno no console é " DEC 11 2020
class NegociacaoController{
constructor(){
let $ = document.querySelector.bind(document);
this._inputData = $("#data");
this._inputQuantidade = $('#quantidade');
this._inputValor = $("#valor");
}
adiciona(event){
event.preventDefault();
let data = new Date(
...this._inputData.value
.split('-')
// .map(function(item, indice){
// if (indice == 1){
// return item - 2;
// }
// return item;
// })
)
console.log(data)
}
}
Tentei corrigir o primeiro modo, utilizando o map como explicado, porém, o resultado não é o esperado.
adiciona(event){
event.preventDefault();
let data = new Date(
...this._inputData.value
.split('-')
.map(function(item, indice){
if (indice == 0){
return item-1
}
if (indice == 1){
return item - 2;
}
if (indice == 2){
return item -1;
}
return item;
})
)
console.log(data)
}
Dessa forma, ao inserir 12/11/2020 o retorno foi nov 10 2019 ( Brasilia Standar Time ), ou seja, não consegui resolver o problema apresentado e com o spread operator o comportamento foi diferente do que o esperado.