Temporal.PlainDateTime.prototype.add()
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The add()
method of Temporal.PlainDateTime
instances returns a new Temporal.PlainDateTime
object representing this date-time moved forward by a given duration (in a form convertible by Temporal.Duration.from()
).
Syntax
add(duration)
add(duration, options)
Parameters
duration
-
A string, an object, or a
Temporal.Duration
instance representing a duration to add to this date-time. It is converted to aTemporal.Duration
object using the same algorithm asTemporal.Duration.from()
. options
Optional-
An object containing the following property:
overflow
Optional-
A string specifying the behavior when a date component is out of range. Possible values are:
"constrain"
(default)-
The date component is clamped to the valid range.
"reject"
-
A
RangeError
is thrown if the date component is out of range.
Return value
A new Temporal.PlainDateTime
object representing the date-time specified by the original PlainDateTime
, plus the duration.
Description
For how calendar durations are added, see Temporal.PlainDate.prototype.add()
.
Adding a duration is equivalent to subtracting its negation.
Examples
Adding a duration
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
For more examples, especially with how different calendars and the overflow
option interact with calendar durations, see Temporal.PlainDate.prototype.add()
.
Specifications
Specification |
---|
Temporal proposal # sec-temporal.plaindatetime.prototype.add |
Browser compatibility
BCD tables only load in the browser