Temporal.ZonedDateTime.prototype.offsetNanoseconds
Temporal.ZonedDateTime 例項的 offsetNanoseconds 訪問器屬性返回一個整數,該整數表示用於解釋內部即時時間的偏移量,以納秒為單位(正或負)。該值是一個安全整數,因為它小於一天,即 8.64e15 納秒。
offsetNanoseconds 的設定器為 undefined。你不能直接更改此屬性。更改 offset 也會更改此屬性。
示例
使用 offsetNanoseconds
js
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
下面是獲取一個表示 UTC 中相同掛鐘時間的 ZonedDateTime 的一種方法
js
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]"
下面是獲取相同結果的更好方法
js
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]"
規範
| 規範 |
|---|
| Temporal # sec-get-temporal.zoneddatetime.prototype.offsetnanoseconds |
瀏覽器相容性
載入中…