Вы можете указать смещение часового пояса на new Date()
, например:
new Date('Feb 28 2013 19:00:00 EST')
или
new Date('Feb 28 2013 19:00:00 GMT-0500')
Поскольку Date
сохраняет время UTC (т. е. getTime
возвращается в UTC), javascript преобразует время в UTC, и когда вы вызываете такие вещи, как toString
, javascript преобразует время UTC в локальный часовой пояс браузера и возвращает строку в локальном часовом поясе, то есть, если я использую UTC+8
:
> new Date('Feb 28 2013 19:00:00 GMT-0500').toString()
< "Fri Mar 01 2013 08:00:00 GMT+0800 (CST)"
Также вы можете использовать обычный метод getHours/Minute/Second
:
> new Date('Feb 28 2013 19:00:00 GMT-0500').getHours()
< 8
(Этот параметр 8
означает, что после преобразования времени в мое местное время - UTC+8
, число часов - 8
.)