Temporal.ZonedDateTime.prototype.offsetNanoseconds
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Die offsetNanoseconds Zugriffseigenschaft von Temporal.ZonedDateTime Instanzen liefert eine Ganzzahl, die den Offset darstellt, welcher zur Interpretation des internen Moments verwendet wird, als Anzahl von Nanosekunden (positiv oder negativ). Der Wert ist eine sichere Ganzzahl, da er kleiner als ein Tag ist, welcher 8.64e15 Nanosekunden beträgt.
Der Setzugriff von offsetNanoseconds ist undefined. Sie können diese Eigenschaft nicht direkt ändern. Ändern Sie offset, um auch diese Eigenschaft zu ändern.
Beispiele
>Verwendung von offsetNanoseconds
const dt = Temporal.ZonedDateTime.from(
"2021-07-01T12:00:00-07:00[America/Los_Angeles]",
);
console.log(dt.offsetNanoseconds); // -25200000000000
const dt2 = Temporal.ZonedDateTime.from(
"2021-07-01T12:00:00+08:00[Asia/Shanghai]",
);
console.log(dt2.offsetNanoseconds); // 28800000000000
const dt3 = Temporal.ZonedDateTime.from(
"1900-01-01T00:00:00+00:09:21[Europe/Paris]",
);
console.log(dt3.offsetNanoseconds); // 561000000000
Hier ist eine Möglichkeit, ein ZonedDateTime zu erhalten, das die gleiche Wanduhrzeit in UTC darstellt:
const dt = Temporal.ZonedDateTime.from(
"2021-07-01T12:00:00-07:00[America/Los_Angeles]",
);
const dtInUTC = dt.add({ nanoseconds: dt.offsetNanoseconds });
console.log(dtInUTC.withTimeZone("UTC").toString()); // "2021-07-01T12:00:00+00:00[UTC]"
Hier ist eine bessere Möglichkeit, das gleiche Ergebnis zu erzielen:
const dt = Temporal.ZonedDateTime.from(
"2021-07-01T12:00:00-07:00[America/Los_Angeles]",
);
const dtInUTC = dt.toPlainDateTime().toZonedDateTime("UTC");
console.log(dtInUTC.toString()); // "2021-07-01T12:00:00+00:00[UTC]"
Spezifikationen
| Specification |
|---|
| Temporal> # sec-get-temporal.zoneddatetime.prototype.offsetnanoseconds> |