Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
Date.now()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.
DieDate.now() statische Methode gibt die Anzahl der Millisekunden zurück, die seit demEpoch-Zeitpunkt vergangen sind. Dieser ist definiert als Mitternacht zu Beginn des 1. Januar 1970, UTC.
In diesem Artikel
Probieren Sie es aus
// This example takes 2 seconds to runconst start = Date.now();console.log("starting timer...");// Expected output: "starting timer..."setTimeout(() => { const ms = Date.now() - start; console.log(`seconds elapsed = ${Math.floor(ms / 1000)}`); // Expected output: "seconds elapsed = 2"}, 2000);Syntax
Date.now()Parameter
Keine.
Rückgabewert
Eine Zahl, die denZeitstempel der aktuellen Zeit in Millisekunden darstellt.
Beschreibung
>Verringerte Zeitpräzision
Um Schutz gegen Timing-Angriffe undFingerprinting zu bieten, könnte die Präzision vonDate.now() je nach Browsereinstellungen gerundet werden. In Firefox ist die Präferenzprivacy.reduceTimerPrecision standardmäßig aktiviert und auf 2ms voreingestellt. Sie können auchprivacy.resistFingerprinting aktivieren, wobei die Präzision dann 100ms oder der Wert vonprivacy.resistFingerprinting.reduceTimerPrecision.microseconds, je nachdem welcher größer ist, beträgt.
Zum Beispiel wird mit verringerter Zeitpräzision das Ergebnis vonDate.now() immer ein Vielfaches von 2 sein, oder ein Vielfaches von 100 (oderprivacy.resistFingerprinting.reduceTimerPrecision.microseconds) mit aktiviertemprivacy.resistFingerprinting.
// reduced time precision (2ms) in Firefox 60Date.now();// Might be:// 1519211809934// 1519211810362// 1519211811670// …// reduced time precision with `privacy.resistFingerprinting` enabledDate.now();// Might be:// 1519129853500// 1519129858900// 1519129864400// …Beispiele
>Verstrichene Zeit messen
Sie könnenDate.now() verwenden, um die aktuelle Zeit in Millisekunden zu erhalten, dann eine vorherige Zeit subtrahieren, um herauszufinden, wie viel Zeit zwischen den beiden Aufrufen verstrichen ist.
const start = Date.now();doSomeLongRunningProcess();console.log(`Time elapsed: ${Date.now() - start} ms`);Für komplexere Szenarien möchten Sie möglicherweise diePerformance API verwenden.
Spezifikationen
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-date.now> |