Heim > Web-Frontend > js-Tutorial > Wie generiert man ISO 8601-formatierte Zeichenfolgen in JavaScript?

Wie generiert man ISO 8601-formatierte Zeichenfolgen in JavaScript?

Mary-Kate Olsen
Freigeben: 2024-11-29 09:55:10
Original
698 Leute haben es durchsucht

How to Generate ISO 8601 Formatted Strings in JavaScript?

Ausgabe von ISO 8601-formatierten Zeichenfolgen in JavaScript

Um den „Titel“-Teil einer ISO 8601-formatierten Zeichenfolge darzustellen, sollten Sie die folgenden Ansätze in Betracht ziehen:

Verwenden der toISOString()-Methode

Das Date-Objekt von JavaScript stellt die bereit toISOString()-Methode, die direkt eine Zeichenfolge im ISO 8601-Format zurückgibt.

const date = new Date();
const isoString = date.toISOString();
Nach dem Login kopieren

Benutzerdefinierte Formatfunktion

Wenn toISOString() nicht verfügbar ist, können Sie eine benutzerdefinierte Funktion zum Generieren von ISO implementieren 8601 Zeichenfolgen:

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()));
Nach dem Login kopieren

Polyfill für toISOString()

Für Browser ohne Unterstützung für toISOString() können Sie die folgende Polyfüllung verwenden:

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'
      );
    };
  })();
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie generiert man ISO 8601-formatierte Zeichenfolgen in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage