JS даты только с часовым поясом UTC - PullRequest
0 голосов
/ 08 октября 2011

Есть ли способ сообщить Javascript, что он никогда не должен использовать ничего, кроме часового пояса UTC?

Когда я создаю новый объект Date, он получает часовой пояс моих браузеров, но при транспортировке через JSON он портится.

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

Я использую Bakcbone и DateJS, если это имеет какое-либо значение.

Есть идеи по этому поводу?

Ответы [ 2 ]

2 голосов
/ 08 октября 2011

Вместо переноса строкового представления даты, new Date().milliseconds. Это время UNIX, , т.е.

Целочисленное значение, представляющее количество миллисекунд с 1 января 1970 00:00:00 UTC.

и, следовательно, не зависит от часового пояса.

Либо создайте строку даты самостоятельно, но используйте методы getUTC*:

var d = new Date();
alert("It's " + d.getUTCHours() + ':' + d.getUTCSeconds());
0 голосов
/ 13 октября 2011

В итоге я просто использовал .toString () и отправил его вместе с сообщением JSON. Казалось, самое простое, что можно сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...