У меня есть веб-интерфейс ASP.NET с DateTimeZoneHandling
, установленным на Local
, и я получаю два разных результата при преобразовании в дату JavaScript.
Пример 1
Дата, возвращаемая с сервера 1932-10-13T00:00:00-04:00
var strDate = new Date("1932-10-13T00:00:00-04:00");
strDate.toISOString(); // 1932-10-13T04:00:00.000Z
strDate.toLocaleString(); // 10/12/1932, 11:00:00 PM
Пример 2
Дата, возвращаемая с сервера 2013-05-09T00:00:00-04:00
var strDate = new Date("2013-05-09T00:00:00-04:00");
strDate.toISOString(); // 2013-05-09T04:00:00.000Z
strDate.toLocaleString(); // 5/9/2013, 12:00:00 AM
Я ожидал, что поведение всегда должно быть полуночным, поскольку даты, возвращаемые с сервера, всегда полуночные.Похоже, что все последние даты анализируются правильно, однако даты в далеком прошлом неверны.