Temporal.PlainDateTime.prototype.round()

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.

Die round()-Methode von Temporal.PlainDateTime-Instanzen gibt ein neues Temporal.PlainDateTime-Objekt zurück, das diesen Datum-Uhrzeit-Wert auf die angegebene Einheit gerundet darstellt.

Syntax

js
round(smallestUnit)
round(options)

Parameter

smallestUnit

Ein String, der die smallestUnit-Option repräsentiert. Dies ist eine Komfortüberladung, so dass round(smallestUnit) äquivalent zu round({ smallestUnit }) ist, wobei smallestUnit ein String ist.

options

Ein Objekt, das einige oder alle der folgenden Eigenschaften enthält (in der Reihenfolge, in der sie abgerufen und validiert werden):

roundingIncrement Optional

Eine Zahl (auf eine ganze Zahl abgerundet), die das Rundungsinkrement in der angegebenen smallestUnit darstellt. Standardmäßig 1. Für alle Werte von smallestUnit außer "day" muss das Inkrement ein Teiler des Höchstwertes der Einheit sein; zum Beispiel, wenn die Einheit Stunden ist, muss das Inkrement ein Teiler von 24 sein und darf nicht 24 selbst sein, was bedeutet, dass es 1, 2, 3, 4, 6, 8 oder 12 sein kann. Für "day" muss das Inkrement 1 sein.

roundingMode Optional

Ein String, der angibt, wie der Bruchteil von smallestUnit abgerundet wird. Siehe Intl.NumberFormat(). Standardmäßig "halfExpand".

smallestUnit

Ein String, der die kleinste Einheit darstellt, die in die Ausgabe aufgenommen wird. Der Wert muss einer der folgenden sein: "day", "hour", "minute", "second", "millisecond", "microsecond", "nanosecond" oder deren Pluralformen. Für Einheiten größer als "nanosecond" werden Bruchteile der smallestUnit gemäß den roundingIncrement- und roundingMode-Einstellungen gerundet.

Rückgabewert

Ein neues Temporal.PlainDateTime-Objekt, das diesen Datum-Uhrzeit-Wert auf die angegebene Einheit gerundet darstellt, wobei alle Einheiten kleiner als smallestUnit auf Null gesetzt werden.

Ausnahmen

RangeError

Wird ausgelöst, wenn eine der Optionen ungültig ist.

Beispiele

Kleine Einheiten runden

js
const dt = Temporal.PlainDateTime.from("2021-07-01T12:34:56.123456789");
const nearestMillisecond = dt.round("millisecond");
console.log(nearestMillisecond.toString()); // 2021-07-01T12:34:56.123

const nearestHalfHour = dt.round({
  smallestUnit: "minute",
  roundingIncrement: 30,
});
console.log(nearestHalfHour.toString()); // 2021-07-01T12:30:00

const nextDay = dt.round({ smallestUnit: "day", roundingMode: "ceil" });
console.log(nextDay.toString()); // 2021-07-02T00:00:00

Spezifikationen

Specification
Temporal
# sec-temporal.plaindatetime.prototype.round

Browser-Kompatibilität

Siehe auch