moment.js - UTC ne fonctionne pas comme prévu
tests dans le nœud de la console:
var moment = require('moment');
//create a new Date-Object
var now = new Date(2013, 02, 28, 11, 11, 11);
//create the native timestamp
var native = Date.UTC(now.getFullYear(), now.getMonth(), now.getDate(), now.getHours(), now.getMinutes(), now.getSeconds());
//create the timestamp with moment
var withMoment = moment.utc(now).valueOf()
//it doesnt matter if i use moment(now).utc().valueOf() or moment().utc(now).valueOf()
//native: 1364469071000
//withMoment: 1364465471000
native === withMoment //false!?!?!
//this returns true!!!
withMoment === now.getTime()
pourquoi n'est pas natif de la même heure que withMoment? pourquoi ne withMoment retour le timestamp calculée à partir du courant de l'heure locale? comment puis-je parvenir à ce moment-là.utc() renvoie la même Date.UTC()?
OriginalL'auteur hereandnow78 | 2013-02-28
Vous devez vous connecter pour publier un commentaire.
Appel
moment.utc()
de la même manière que vous l'appelezDate.UTC
:Je pense que cet appel
moment.utc(now)
permettra de faire assumernow
vie dans le fuseau horaire local, et il va le convertir au format UTC premier, d'où la différence.Vous pouvez passer
native
àmoment.utc()
au lieu denow
, cela fonctionnera aussi.ouais, toujours pas ce que je voulais, mais ty 😉
L'homme, vous avez sauvé ma journée. Veuillez prendre une bière et m'envoyer le projet de loi.
OriginalL'auteur robertklep
Ce que vous faites est essentiellement cela.
Parce que
now
est construit dans le fuseau horaire actuel etnative
est construit en UTC, ils diffèrent par votre décalage. 11 AM PST != 11 H GMT.OriginalL'auteur timrwood