JavaScript Date.toJSON não obtém o deslocamento de fuso horário
Bem, o problema é que eu estava usando código assim:
new Date().toJSON().slice(0, 10)
para obter minha data comoYYYY-MM-DD
string, então eu uso como parâmetro em algumas consultas mysql e em algumas instruções de condição. No final do dia eu não estava recebendo a data correta, uma vez que ainda estava no dia anterior (meu deslocamento de fuso horário é +2 / 3 horas).
Eu não notei que otoJSON
O método não leva em conta o seu deslocamento de fuso horário, então acabei com essa solução hacky:
var today = new Date();
today.setHours( today.getHours()+(today.getTimezoneOffset()/-60) );
console.log(today.toJSON().slice(0, 10));
Existe uma solução mais elegante?
Aqui está o código de teste:http://jsfiddle.net/simo/qwhYw/JavaScriptMétodo toJSONJavaScriptObjeto de data