Maison > interface Web > js tutoriel > Comment générer des horodatages ISO 8601 avec décalage de fuseau horaire en JavaScript ?

Comment générer des horodatages ISO 8601 avec décalage de fuseau horaire en JavaScript ?

DDD
Libérer: 2024-12-18 10:45:13
original
145 Les gens l'ont consulté

How to Generate ISO 8601 Timestamps with Timezone Offset in JavaScript?

Formatage ISO 8601 des dates avec décalage de fuseau horaire en JavaScript

Objectif : Construire une URL avec un horodatage en ISO Format 8601 qui inclut le fuseau horaire offset.

Approche :

  1. Obtenez l'heure locale en utilisant new Date().
  2. Calculez le décalage horaire par rapport à UTC à l'aide de getTimezoneOffset( ).
  3. Construisez la chaîne d'horodatage au format requis : aaaa-MM-jjThh:mm:ss±hh:mm.

Mise en œuvre :

La fonction JavaScript suivante construit l'horodatage ISO 8601 :

function toIsoString(date) {
  var tzo = -date.getTimezoneOffset(),  // Negative offset means UTC is ahead of local time
      dif = tzo >= 0 ? '+' : '-',
      pad = function(num) {
          return (num < 10 ? '0' : '') + num;
      };

  return date.getFullYear() +
      '-' + pad(date.getMonth() + 1) +
      '-' + pad(date.getDate()) +
      'T' + pad(date.getHours()) +
      ':' + pad(date.getMinutes()) +
      ':' + pad(date.getSeconds()) +
      dif + pad(Math.floor(Math.abs(tzo) / 60)) +
      ':' + pad(Math.abs(tzo) % 60);
}
Copier après la connexion

Par exemple, si l'heure locale est le 02/07/2013 9h et le décalage du fuseau horaire est de -7 heures (UTC a 7 heures d'avance) :

var dt = new Date();
console.log(toIsoString(dt));  // Outputs: "2013-07-02T09:00:00-07:00"
Copier après la connexion

Notez que le signe ou - indique si l'heure locale est en avance ou en retard sur UTC.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal