Temporal.Now
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Das Temporal.Now
-Objekt bietet Methoden zum Abrufen der aktuellen Zeit in verschiedenen Formaten.
Beschreibung
Anders als die meisten globalen Objekte ist Temporal.Now
kein Konstruktor. Sie können es nicht mit dem new
Operator verwenden oder das Temporal.Now
-Objekt als Funktion aufrufen. Alle Eigenschaften und Methoden von Temporal.Now
sind statisch (genau wie das Math
-Objekt).
Grundlegend wird die Systemzeit vom Betriebssystem als Zeit seit der Unix-Epoche zurückgegeben (normalerweise mit Millisekunden-Genauigkeit, es könnte jedoch auch Nanosekunden-Genauigkeit sein). Temporal.Now.instant()
gibt diese Zeit als ein Temporal.Instant
-Objekt zurück.
Ein Zeitpunkt kann in einer Zeitzone interpretiert werden (welches standardmäßig die Systemzeitzone Temporal.Now.timeZoneId()
ist) ähnlich wie Temporal.Instant.prototype.toZonedDateTimeISO()
. Um ein Temporal.ZonedDateTime
-Objekt zu erhalten, können Sie Temporal.Now.zonedDateTimeISO()
verwenden. Sie können auch verschiedene Teile des Datums und der Zeit erhalten, indem Sie Temporal.Now.plainDateISO()
, Temporal.Now.plainTimeISO()
und Temporal.Now.plainDateTimeISO()
verwenden.
Beispielsweise, wenn der Computer auf die Zeitzone "America/New_York" eingestellt ist, gibt Temporal.Now.zonedDateTimeISO()
ein zonales Datum-Uhrzeit zurück wie: 2021-08-01T10:40:12.345-04:00[America/New_York]
. In diesem Fall würde Temporal.Now.plainTimeISO()
den Zeitanteil dieses zonalen Datums-Uhrzeit zurückgeben: 10:40:12.345
. Wenn Sie jedoch Temporal.Now.plainTimeISO("UTC")
aufrufen, wird der Zeitanteil der zonalen Datums-Uhrzeit in der UTC-Zeitzone zurückgegeben: 14:40:12.345
. Dies ist besonders nützlich für die Kommunikation zwischen Systemen, bei denen die andere Seite möglicherweise die Zeit in einer anderen Zeitzone erwartet.
Reduzierte Zeitgenauigkeit
Um Schutz gegen Timing-Angriffe und Fingerabdruckerstellung zu bieten, könnte die Genauigkeit der Temporal.Now
-Funktionen je nach Browser-Einstellungen gerundet werden. In Firefox ist die privacy.reduceTimerPrecision
-Einstellung standardmäßig aktiviert und standardmäßig auf 2ms festgelegt. Sie können auch privacy.resistFingerprinting
aktivieren, in welchem Fall die Genauigkeit 100ms oder der Wert von privacy.resistFingerprinting.reduceTimerPrecision.microseconds
, je nachdem, welcher größer ist, betragen wird.
Beispielsweise wird das Ergebnis von Temporal.Now.instant().epochMilliseconds
mit reduzierter Zeitgenauigkeit immer ein Vielfaches von 2 sein, oder ein Vielfaches von 100 (oder privacy.resistFingerprinting.reduceTimerPrecision.microseconds
) bei aktiviertem privacy.resistFingerprinting
.
// reduced time precision (2ms) in Firefox 60
Temporal.Now.instant().epochMilliseconds;
// Might be:
// 1519211809934
// 1519211810362
// 1519211811670
// …
// reduced time precision with `privacy.resistFingerprinting` enabled
Temporal.Now.instant().epochMilliseconds;
// Might be:
// 1519129853500
// 1519129858900
// 1519129864400
// …
Statische Eigenschaften
Temporal.Now[Symbol.toStringTag]
-
Der initiale Wert der
[Symbol.toStringTag]
Eigenschaft ist der String"Temporal.Now"
. Diese Eigenschaft wird inObject.prototype.toString()
verwendet.
Statische Methoden
Temporal.Now.instant()
Experimentell-
Gibt die aktuelle Zeit als ein
Temporal.Instant
-Objekt zurück. Temporal.Now.plainDateISO()
Experimentell-
Gibt das aktuelle Datum als ein
Temporal.PlainDate
-Objekt zurück, im ISO 8601 Kalender und der angegebenen Zeitzone. Temporal.Now.plainDateTimeISO()
Experimentell-
Gibt das aktuelle Datum und die Uhrzeit als ein
Temporal.PlainDateTime
-Objekt zurück, im ISO 8601 Kalender und der angegebenen Zeitzone. Temporal.Now.plainTimeISO()
Experimentell-
Gibt die aktuelle Zeit als ein
Temporal.PlainTime
-Objekt zurück, in der angegebenen Zeitzone. Temporal.Now.timeZoneId()
Experimentell-
Gibt einen Zeitzonen-Bezeichner zurück, der die aktuelle Zeitzone des Systems darstellt.
Temporal.Now.zonedDateTimeISO()
Experimentell-
Gibt das aktuelle Datum und die Uhrzeit als ein
Temporal.ZonedDateTime
-Objekt zurück, im ISO 8601 Kalender und der angegebenen Zeitzone.
Spezifikationen
Specification |
---|
Temporal proposal # sec-temporal-now-object |
Browser-Kompatibilität
BCD tables only load in the browser