web-dev-qa-db-fra.com

Obtenir un horodatage UTC

Comment puis-je obtenir le timestamp UTC actuel en JavaScript? Je souhaite effectuer cette opération pour pouvoir envoyer des horodatages du côté client indépendants de leur fuseau horaire.

224
bgcode
new Date().getTime();

Pour plus d'informations, voir réponse de James McMahon .

207
ExpExc

Comme Wizzard a souligné, la méthode correcte est,

new Date().getTime();

ou sous Javascript 1.5 , juste

Date.now();

À partir de la documentation ,

La valeur renvoyée par la méthode getTime est le nombre de millisecondes depuis le 1er janvier 1970 00:00:00 UTC.

Si vous voulez faire un horodatage sans millisecondes, vous pouvez utiliser,

Math.floor(Date.now() / 1000);

Je voulais en faire une réponse pour que la méthode correcte soit plus visible.

Vous pouvez comparer les résultats d'ExpExc et de Narendra Yadala à la méthode ci-dessus à l'adresse http://jsfiddle.net/JamesFM/bxEJd/ et vérifier avec http://www.unixtimestamp.com/ ou en exécutant date +%s sur un terminal Unix.

137
James McMahon

Vous pouvez utiliser la méthode Date.UTC pour obtenir l’horodatage dans le fuseau horaire UTC.

Usage:

var now = new Date;
var utc_timestamp = Date.UTC(now.getUTCFullYear(),now.getUTCMonth(), now.getUTCDate() , 
      now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds(), now.getUTCMilliseconds());

Démo en direct ici http://jsfiddle.net/naryad/uU7FH/1/

60
Narendra Yadala

"... qui sont indépendants de leur fuseau horaire"

var timezone =  d.getTimezoneOffset() // difference in minutes from GMT
7
abuduba