Temporal.PlainDateTime.prototype.add()

可用性有限

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

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

Temporal.PlainDateTime 例項的 add() 方法返回一個新的 Temporal.PlainDateTime 物件,表示此日期時間向前移動了給定的持續時間(以可被 Temporal.Duration.from() 轉換的形式)。

語法

js
add(duration)
add(duration, options)

引數

duration

一個字串、一個物件或一個 Temporal.Duration 例項,表示要新增到此日期時間的持續時間。它使用與 Temporal.Duration.from() 相同的演算法轉換為 Temporal.Duration 物件。

options 可選

包含以下屬性的物件

overflow 可選

一個字串,指定日期元件超出範圍時的行為。可能的值是

"constrain"(預設)

日期元件被限制在有效範圍內。

"reject"

如果日期元件超出範圍,則丟擲 RangeError

返回值

一個新的 Temporal.PlainDateTime 物件,表示由原始 PlainDateTime 指定的日期時間加上持續時間。

異常

RangeError

如果結果不在 可表示範圍 內,即距 Unix 紀元 ±(108 + 1) 天(約 ±273,972.6 年),則丟擲此錯誤。

描述

關於如何新增日曆持續時間,請參閱 Temporal.PlainDate.prototype.add()

新增持續時間等同於減去負值

示例

新增持續時間

js
const start = Temporal.PlainDateTime.from("2021-01-01T12:34:56");
const end = start.add({
  years: 1,
  months: 2,
  weeks: 3,
  days: 4,
  hours: 5,
  minutes: 6,
  seconds: 7,
  milliseconds: 8,
});
console.log(end.toString()); // 2022-03-26T17:41:03.008

有關更多示例,特別是不同日曆和 overflow 選項如何與日曆持續時間互動的示例,請參閱 Temporal.PlainDate.prototype.add()

規範

規範
Temporal
# sec-temporal.plaindatetime.prototype.add

瀏覽器相容性

另見