Comparer 2 ISO 8601 les horodatages et de sortie des secondes/minutes de différence

J'ai besoin d'écrire du code JavaScript qui va me permettre de comparer deux ISO horodateurs et ensuite, imprimez la différence entre eux, par exemple: "32 secondes".

Ci-dessous est une fonction que j'ai trouvé sur un Débordement de Pile, il transforme l'ordinaire en date en ISO formaté un. Donc, c'est la première chose que la route, obtenir l'heure courante au format ISO.

La prochaine chose à faire est d'obtenir un autre ISO horodatage à comparer avec, eh bien, je l'ai stocké dans un objet. Il peut être accédé comme ceci: marqueur.timestamp (comme indiqué dans le code ci-dessous). Maintenant, j'ai besoin de comparer deux à deux les horodatages et de travailler sur la différence entre eux. Si c'est < 60 secondes, il devrait sortir en quelques secondes, si c'est > 60 secondes, il devrait de sortie de 1 minute et 12 secondes plus tôt par exemple.

Merci!

function ISODateString(d){
 function pad(n){return n<10 ? '0'+n : n}
 return d.getUTCFullYear()+'-'
      + pad(d.getUTCMonth()+1)+'-'
      + pad(d.getUTCDate())+'T'
      + pad(d.getUTCHours())+':'
      + pad(d.getUTCMinutes())+':'
      + pad(d.getUTCSeconds())+'Z'}

var date = new Date();
var currentISODateTime = ISODateString(date);
var ISODateTimeToCompareWith = marker.timestamp;

//Now how do I compare them?
  • Donc, vous voulez comparer currentISODateTime avec ISODateTimeToCompareWith et ils sont tous les deux au format ISO 8601?
  • Oui, exactement, alors la sortie de la différence entre eux. Ils sont tous les deux au format ISO 8601.
InformationsquelleAutor jskidd3 | 2013-08-02