2012-11-13 12 views
8

Powiedzmy I wpisz następujący kod w konsoli:utworzyć javascript data 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) 

Powoduje to, że data jest właściwie ustawiony na czas lokalny. Jak utworzyć datę ustawioną na UTC? Jeśli wykonam TheDate.toUTCString(), chcę to powiedzieć 05 listopada 2012 00:00:00 GMT.

Dzięki.

Odpowiedz

25

użyć metody Date.UTC():

var TheDate = new Date(Date.UTC(2012, 10, 5)); 
console.log(TheDate.toUTCString()); 

powraca

Mon, 05 Nov 2012 00:00:00 GMT 

Date.UTC

przyjmuje takie same parametry jak najdłuższego postaci konstruktora i zwraca milisekundach w obiekcie Date od 1 stycznia 1970, 00 : 00: 00, czas uniwersalny.

+0

OK, dzięki za odpowiedź !! – frenchie

+0

Jaka jest różnica funkcjonalna między 'nową datą (Date.UTC (2012, 10, 5));' i 'Date.UTC (2012, 10, 5);'? –

+2

@JakeT. 'Date.UTC()' właśnie zwraca znacznik czasu (liczbę). 'new Date (Date.UTC())' zwróci obiekt 'Date'. – Sirko

2

Proponuję użyć momentjs (

momentjs.com

), to wszystko co musisz zrobić, to:

var theDate = new Date(2012, 10, 5), 
    utcDate = moment.utc(theDate);