Maison > interface Web > js tutoriel > Comment générer des chaînes au format ISO 8601 en JavaScript ?

Comment générer des chaînes au format ISO 8601 en JavaScript ?

Mary-Kate Olsen
Libérer: 2024-11-29 09:55:10
original
757 Les gens l'ont consulté

How to Generate ISO 8601 Formatted Strings in JavaScript?

Sortie de chaînes au format ISO 8601 en JavaScript

Pour restituer la partie « titre » d'une chaîne au format ISO 8601, envisagez d'utiliser les approches suivantes :

En utilisant la méthode toISOString()

L'objet Date de JavaScript fournit le toISOString(), qui renvoie directement une chaîne au format ISO 8601.

const date = new Date();
const isoString = date.toISOString();
Copier après la connexion

Fonction de format personnalisé

Si toISOString() n'est pas disponible, vous pouvez implémenter une fonction personnalisée pour générer des ISO 8601 chaînes :

function isoDate(msSinceEpoch) {
  const d = new Date(msSinceEpoch);
  return (
    d.getUTCFullYear() +
    '-' +
    (d.getUTCMonth() + 1).toString().padStart(2, 0) +
    '-' +
    d.getUTCDate().toString().padStart(2, 0) +
    'T' +
    d.getUTCHours().toString().padStart(2, 0) +
    ':' +
    d.getUTCMinutes().toString().padStart(2, 0) +
    ':' +
    d.getUTCSeconds().toString().padStart(2, 0)
  );
}

console.log(isoDate(Date.now()));
Copier après la connexion

Polyfill pour toISOString()

Pour les navigateurs sans prise en charge de toISOString(), vous pouvez utiliser le polyfill suivant :

if (!Date.prototype.toISOString) {
  (function() {
    function pad(number) {
      const r = String(number);
      if (r.length === 1) {
        r = '0' + r;
      }
      return r;
    }

    Date.prototype.toISOString = function() {
      return (
        this.getUTCFullYear() +
        '-' +
        pad(this.getUTCMonth() + 1) +
        '-' +
        pad(this.getUTCDate()) +
        'T' +
        pad(this.getUTCHours()) +
        ':' +
        pad(this.getUTCMinutes()) +
        ':' +
        pad(this.getUTCSeconds()) +
        '.' +
        String((this.getUTCMilliseconds() / 1000).toFixed(3)).slice(2, 5) +
        'Z'
      );
    };
  })();
}
Copier après la connexion

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal