Heim >Web-Frontend >js-Tutorial >Wie formatiere ich die verstrichene Zeit in natürlicher Sprache in JavaScript?

Wie formatiere ich die verstrichene Zeit in natürlicher Sprache in JavaScript?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-09 11:34:02766Durchsuche

How to Format Time Elapsed in Natural Language in JavaScript?

Verstrichene Zeit in natürlicher Sprache formatieren

Bei der Anzeige von Zeitstempeln kann es benutzerfreundlicher sein, die verstrichene Zeit in natürlicher Sprache auszudrücken. wie zum Beispiel „vor 4 Minuten“ statt „2023-03-08 14:05:03“. In diesem Artikel wird gezeigt, wie Sie JavaScript-Datumsobjekte auf diese prägnante und lesbare Weise formatieren.

Die bereitgestellte Funktion timeSince berechnet die Differenz zwischen dem aktuellen Datum und einem bestimmten Datum. Anschließend wird die verstrichene Zeit basierend auf der Anzahl der verstrichenen Sekunden in Jahre, Monate, Tage, Stunden, Minuten oder Sekunden kategorisiert.

function timeSince(date) {
  var seconds = Math.floor((new Date() - date) / 1000);

  var interval = seconds / 31536000;

  if (interval > 1) {
    return Math.floor(interval) + " years";
  }
  interval = seconds / 2592000;
  if (interval > 1) {
    return Math.floor(interval) + " months";
  }
  interval = seconds / 86400;
  if (interval > 1) {
    return Math.floor(interval) + " days";
  }
  interval = seconds / 3600;
  if (interval > 1) {
    return Math.floor(interval) + " hours";
  }
  interval = seconds / 60;
  if (interval > 1) {
    return Math.floor(interval) + " minutes";
  }
  return Math.floor(seconds) + " seconds";
}

Zum Beispiel:

var aDay = 24 * 60 * 60 * 1000;
console.log(timeSince(new Date(Date.now() - aDay))); // "1 day ago"
console.log(timeSince(new Date(Date.now() - aDay * 2))); // "2 days ago"

Das obige ist der detaillierte Inhalt vonWie formatiere ich die verstrichene Zeit in natürlicher Sprache in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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