JavaScript Date.now() Methode

Date 对象参考手册JavaScript Date-Objekt

Beispiel

Gibt die Millisekunden der aktuellen Zeit zurück:

const currentTime = Date.now();
console.log(currentTime); // Ausgabe ähnlich wie: 1633072800000

Selbst ausprobieren »

In diesem Beispiel,currentTimeDie Variable wird die Millisekunden der aktuellen Zeit speichern. Jedes Mal, wenn dieser Code ausgeführt wird, wird der Ausgabewert anders sein, weil immer die aktuelle Zeit zurückgegeben wird.


Definition und Verwendung

Date.now()JaDateEine statische Methode des Objekts, die die aktuelle Zeit in Millisekunden zurückgibt.

Date.now()Die Methode ist sehr nützlich, insbesondere wenn Sie Zeitintervalle messen oder eindeutige Zeitstempel generieren müssen.

Date.now()Die Methode gibt die Anzahl der Millisekunden seit dem 1. Januar 1970, 00:00:00 UTC (Coordinated Universal Time) zurück, einem Zeitpunkt, der als Beginn der "Unix-Epoche" oder des "Unix-Zeitstempels" bekannt ist.

Syntax

Date.now()

Rückgabewert

Date.now()Gibt eine Zahl zurück, die die Anzahl der Millisekunden zwischen der aktuellen Zeit und der Unix-Epoche darstellt.

Browser-Unterstützung

Internet ExplorerFirefoxOperaGoogle ChromeSafari

Alle wichtigen Browser unterstützen die getDate()-Methode


Date.now()undnew Date().getTime()Der Unterschied

Sie wissen vielleicht bereits, dassnew Date().getTime()es kann auch verwendet werden, um die Millisekunden der aktuellen Zeit abzurufen. Also,Date.now()undnew Date().getTime()was ist der Unterschied zwischen ihnen?

Unterschied

  1. Leistung:Date.now()Vergleichennew Date().getTime()ist effizienter. WeilDate.now()es die Millisekunden der aktuellen Zeit direkt zurückgibt, währendnew Date().getTime()es zuerst einDateObjekt erstellen und dann diegetTime()Methode.

  2. Code-Einfachheit:Date.now()Der Code ist prägnanter, weil keine Erstellung erforderlich istDateObjekt.

Beispiel

// Verwendung von Date.now()
const time1 = Date.now();

// Verwendung von new Date().getTime()
const time2 = new Date().getTime();

console.log(time1 === time2); // Ausgabe: true

Obwohl die Ergebnisse beider gleich sind, wird in Szenarien mit hohen Leistungsanforderungen die Verwendung empfohlen.Date.now()。


Date.now()Anwendungsszenarien

Date.now()Die Methode hat mehrere Anwendungsszenarien in der tatsächlichen Entwicklung. Hier sind einige gängige Beispiele:

Messen der Codeausführungszeit

Sie könnenDate.now()um die Ausführungszeit eines Codestücks zu messen.

Beispiel

const startTime = Date.now();

// Simuliere einige zeitaufwändige Operationen
for (let i = 0; i < 1000000; i++) {
    // Einige Berechnungen
}

const endTime = Date.now();
console.log(`Ausführungszeit des Codes: ${endTime - startTime}Millisekunden`);

In diesem Beispiel,endTime - startTimegibt die Zeit an, die für die Ausführung des Codes benötigt wurde (in Millisekunden).

Erzeugen eindeutiger Zeitstempel

Date.now()kann verwendet werden, um eindeutige Zeitstempel zu erzeugen, normalerweise um ein bestimmtes Ereignis oder eine bestimmte Operation zu identifizieren.

Beispiel

const uniqueTimestamp = Date.now();
console.log(uniqueTimestamp); // Gibt die Millisekunden der aktuellen Zeit aus

DaDate.now()Der zurückgegebene Wert ist eindeutig (zumindest auf Millisekundenebene eindeutig), er kann verwendet werden, um eindeutige Identifikatoren zu erzeugen.

Cache-Steuerung

In der Webentwicklung,Date.now()kann verwendet werden, um Cache-Control-Zeitstempel zu generieren, damit der Browser keine abgelaufenen Caches verwendet.

Beispiel

const cacheBuster = Date.now();
const url = `https://example.com/data.json?cache=${cacheBuster}`;

In diesem Beispiel wird jede Anfrage von einem anderen Zeitstempel begleitet, wodurch verhindert wird, dass der Browser alte zwischengespeicherte Daten verwendet.


Hinweise

ObwohlDate.now()es ist sehr nützlich, Sie müssen bei der Verwendung die folgenden Punkte beachten:

  1. Precision:Date.now()Die zurückgegebene Zeitpräzision liegt auf Millisekundenebene. Wenn Sie eine höhere Präzision benötigen (z. B. Mikrosekundenebene), können Sieperformance.now()。

  2. Zeitzone:Date.now()Die zurückgegebene Zeit basiert auf UTC und ist nicht von der lokalen Zeitzone betroffen. Wenn Sie lokale Zeit verarbeiten müssen, können Sienew Date()。

  3. Kompatibilität:Date.now()Es wird in den meisten modernen Browsern unterstützt, kann jedoch in einigen sehr alten Browsern nicht unterstützt werden. Wenn Sie mit diesen Browsern kompatibel sein müssen, können Sienew Date().getTime()als Alternative in Betracht.


Date 对象参考手册JavaScript Date-Objekt

Andere Erweiterungen