Неправильный часовой пояс в Firefox, по сравнению с Safari, используя дату javascript()

следующий код

var date = new Date();
console.log( date );

дает мне

Sun Mar 06 2011 21:41:36 GMT+1300 (NZST) {}

в Firefox, но

Sun Mar 06 2011 21:40:51 GMT+1300 (NZDT)

в Safari (что правильно).

моя системная дата и время установлены в NZDT, поэтому мне интересно, где firefox получает свой NZST. Имейте в виду, что смещение UTC (+1300) является правильным в обоих случаях.

как я могу получить Firefox, отображающий правильный часовой пояс: NZDT?

3 ответов


вы не должны полагаться на этот вывод, поскольку он отличается в других браузерах (IE), вместо этого вы должны использовать метод getTimezoneOffset.

var date = new Date;
console.log( date.getTimezoneOffset() );

смещение изменится с экономией дневного света, но есть способы работать с этим.


Если все так, как вы хотите, за исключением "NZST" , вы можете просто заменить простой текст:

console.log(date.toString().replace('NZST', 'NZDT'));

обратите внимание, что это действительно простое исправление для Проблемы с отображением, оно не затрагивает основную причину.


Это была ошибка, которая была исправлена в Firefox версии 4 и выше.