Temporal.Instant.prototype.subtract()

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

subtract() 方法是 Temporal.Instant 例項的方法,它返回一個新的 Temporal.Instant 物件,表示當前時間點向後移動指定時長(該時長可由 Temporal.Duration.from() 轉換)。

如果你想計算兩個時間點之間的時長,請使用 since()until()

語法

js
subtract(duration)

引數

duration

一個字串、一個物件或一個 Temporal.Duration 例項,表示要從當前時間點減去的一個時長。它使用與 Temporal.Duration.from() 相同的演算法轉換為 Temporal.Duration 物件。

返回值

一個新的 Temporal.Instant 物件,表示從當前時間點減去 duration。如果 duration 為正,則返回的時間點比當前時間點早;如果 duration 為負,則返回的時間點比當前時間點晚。

異常

RangeError

在以下情況之一中丟擲

  • duration 是一個 日曆時長(即 yearsmonthsweeks 具有非零值),或者 days 具有非零值,因為在沒有日曆和時間參照的情況下,日曆時長的含義是不明確的。
  • 結果不在可表示範圍內,該範圍是距 Unix 紀元 ±108 天,或約 ±273,972.6 年。

描述

減去一個時長等同於 加上相反數,因此所有相同的注意事項均適用。

示例

減去一個 Temporal.Duration

js
const instant = Temporal.Instant.fromEpochMilliseconds(1000);
const duration = Temporal.Duration.from("PT1S"); // One-second duration
const newInstant = instant.subtract(duration);
console.log(newInstant.epochMilliseconds); // 0

更多示例,請參閱 add()

規範

規範
Temporal
# sec-temporal.instant.prototype.subtract

瀏覽器相容性

另見