O exercício propõe o desafio abaixo:
Parta do princípio que você tem a seguinte variável:
let dataString = '17-05-2016';
E que usará o construtor de Date, que está preparado para receber uma data no formato ano/mes/dia.
Escreva um código que altere dataString para que seu conteúdo fique compatível com o formato ano/mes/dia. No final, instancie uma Date, exibindo no console seu valor.
As soluções propostas pelo exercício são as seguintes:
let dataString = '17-05-2016';
dataString = dataString.split('-').reverse().join('/');
let data = new Date(dataString);
console.log(data);
ou
let dataString = '17-05-2016';
let data = new Date(dataString.split('-').reverse().join('/'));
console.log(data);
Teoricamente a saída do console deveria ser:
2016/05/17
Contudo, o método join não está gerando nenhuma modificação, nas duas soluções propostas. Utilizando ou não o join a saída obtida é sempre a seguinte:
Tue May 17 2016 00:00:00 GMT-0300 (Horário Padrão de Brasília)
Para imprimir no formato solicitado pelo exercício utilizei a seguinte função:
function toStringDate(objDate){
return `${objDate.getFullYear()}/${objDate.getMonth()}/${objDate.getDate()}`;
}