Создать дату javascript UTC
Скажем, я набираю следующий код в консоли:
var TheDate = new Date(2012, 10, 5);
TheDate.toUTCString();
"Sun, 04 Nov 2012 23:00:00 GMT" (I'm +1 hour ahead of GMT)
В результате дата устанавливается на локальное время. Как создать дату, установленную в UTC? Если я сделаю TheDate.toUTCString()
, я хочу сказать 05 ноя 2012 00:00:00 GMT.
Спасибо.
Ответы
Ответ 1
Используйте метод Date.UTC()
:
var TheDate = new Date( Date.UTC(2012, 10, 5) );
console.log( TheDate.toUTCString() );
возвращает
Mon, 05 Nov 2012 00:00:00 GMT
Date.UTC
Принимает те же параметры, что и самая длинная форма конструктора, и возвращает число миллисекунд в объекте Date с 1 января 1970 года, 00:00:00, универсальное время.
Ответ 2
Я предлагаю вам использовать momentjs (
momentjs.com
), то все, что вам нужно сделать, это:
var theDate = new Date(2012, 10, 5),
utcDate = moment.utc(theDate);
Ответ 3
Я нашел сокращение для него. Вы также можете создать свою дату в формате ISO в качестве new Date('YYYY-MM-DD')
чтобы создать дату в формате UTC:
var DateA = new Date( '2012-11-05' );
console.log( DateA.toUTCString() );
// note the difference between input methods
var DateB = new Date( Date.UTC(2012, 10, 5) );
console.log( DateB.toUTCString() );