Heim > Artikel > Web-Frontend > Javascript-Zeitstempel für Datum/Uhrzeit
JavaScript ist eine leistungsstarke Skriptsprache, die häufig in der Web-Frontend-Entwicklung und serverseitigen Programmierung verwendet wird. Das Konvertieren zwischen Zeitstempeln und Datumsangaben ist ein sehr häufiger Vorgang in JavaScript.
Ein Zeitstempel ist die Anzahl der Millisekunden seit dem 1. Januar 1970 um 00:00:00 UTC (koordinierte Weltzeit). In JavaScript können Sie den aktuellen Zeitstempel mit dem folgenden Code abrufen:
var timestamp = new Date().getTime(); // 获取当前时间戳
Zeitstempel sind jedoch nicht intuitiv und müssen zum menschlichen Verständnis häufig in ein Datum-Uhrzeit-Format konvertiert werden. JavaScript bietet mehrere Methoden zum Konvertieren zwischen Zeitstempeln und Datumsangaben. Im Folgenden stellen wir diese Methoden jeweils vor.
Um den Zeitstempel in Datum und Uhrzeit zu konvertieren, können Sie die Methode toLocaleString()
des Objekts Date
verwenden. Diese Methode gibt eine auf der Ortszeit basierende Zeichenfolge im Format yyyy/MM/dd HH:mm:ss
zurück. Der Code lautet wie folgt: Date
对象的 toLocaleString()
方法。这个方法会根据本地时间返回一个字符串,格式为 yyyy/MM/dd HH:mm:ss
。代码如下:
var timestamp = 1626194523854; // 假设时间戳为 2021/07/14 12:15:23.854 var datetime = new Date(timestamp).toLocaleString('zh-CN', {hour12: false}); console.log(datetime); // 输出:2021/7/14 12:15:23
其中,toLocaleString()
方法接受两个参数:
zh-CN
表示中国。根据地区不同,时间格式会有所不同。{hour12: false}
表示不使用 12 小时制,而是使用 24 小时制。这样,我们就成功将时间戳转换为了日期时间格式。
将日期时间转换为时间戳,可以使用 Date
对象的 getTime()
方法。该方法返回自 1970 年 1 月 1 日 00:00:00 UTC(协调世界时)以来的毫秒数。代码如下:
var datetime = '2021-07-14T12:15:23.854Z'; // 假设日期时间为 2021/07/14 12:15:23.854 UTC var timestamp = new Date(datetime).getTime(); console.log(timestamp); // 输出:1626292523854
其中,日期时间需要满足 ISO 8601 标准格式,即 yyyy-MM-ddTHH:mm:ss.sssZ
。在这个格式中,Z
表示时区为 UTC,也可以指定其他时区。
这样,我们就成功将日期时间转换为了时间戳。
虽然以上代码看起来简单易懂,但需要注意的是,每次创建 Date
对象会产生一定的性能开销,特别是在循环中或者频繁调用时。为了提高性能,我们可以使用一个小技巧,将时间戳缓存为一个变量,只在需要时进行转换,如下所示:
var timestamp = 1626194523854; // 假设时间戳为 2021/07/14 12:15:23.854 var datetime = null; // 初始值为 null,表示尚未转换 var getDatetime = function() { if (datetime === null) { datetime = new Date(timestamp).toLocaleString('zh-CN', {hour12: false}); } return datetime; }; console.log(getDatetime()); // 输出:2021/7/14 12:15:23
这样,在第一次调用 getDatetime()
时,会进行时间戳转换操作,并将结果缓存到 datetime
rrreee
toLocaleString()
zwei Parameter:
{hour12: false
bedeutet, dass anstelle der 12-Stunden-Uhr die 24-Stunden-Uhr verwendet wird. getTime()
des Objekts Date
verwenden. Diese Methode gibt die Anzahl der Millisekunden seit dem 1. Januar 1970 um 00:00:00 UTC (koordinierte Weltzeit) zurück. Der Code lautet wie folgt: 🎜rrreee🎜Unter diesen müssen Datum und Uhrzeit dem ISO 8601-Standardformat entsprechen, also yyyy-MM-ddTHH:mm:ss.sssZ
. In diesem Format gibt Z
an, dass die Zeitzone UTC ist, es können jedoch auch andere Zeitzonen angegeben werden. 🎜🎜Auf diese Weise haben wir Datum und Uhrzeit erfolgreich in einen Zeitstempel umgewandelt. 🎜🎜Überlegungen zur Leistung🎜🎜Obwohl der obige Code einfach und leicht zu verstehen aussieht, sollte beachtet werden, dass jedes Mal, wenn ein Date
-Objekt erstellt wird, ein gewisser Leistungsaufwand entsteht, insbesondere in einer Schleife oder bei häufigem Anruf. Um die Leistung zu verbessern, können wir einen kleinen Trick anwenden, um den Zeitstempel als Variable zwischenzuspeichern und ihn nur bei Bedarf zu konvertieren, wie unten gezeigt: 🎜rrreee🎜Auf diese Weise beim ersten Aufruf von getDatetime()
, wird der Zeitstempel-Konvertierungsvorgang ausgeführt und das Ergebnis wird in der Variablen datetime
zwischengespeichert. Geben Sie bei nachfolgenden Aufrufen einfach das zwischengespeicherte Ergebnis direkt zurück. Dadurch werden wiederholte Zeitstempelkonvertierungsvorgänge vermieden und die Codeleistung verbessert. 🎜🎜Kurz gesagt, die Konvertierung zwischen Zeitstempel und Datum/Uhrzeit in JavaScript ist sehr wichtig und sehr verbreitet. Solange wir die richtige Konvertierungsmethode beherrschen und auf die Codeleistung achten, können wir verschiedene Zeitkonvertierungsanforderungen problemlos bewältigen. 🎜Das obige ist der detaillierte Inhalt vonJavascript-Zeitstempel für Datum/Uhrzeit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!