Temporal.ZonedDateTime.prototype.subtract()
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 subtract()
method of Temporal.ZonedDateTime
instances returns a new Temporal.ZonedDateTime
object representing this date-time moved backward by a given duration (in a form convertible by Temporal.Duration.from()
).
If you want to subtract two date-times and get a duration, use since()
or until()
instead.
Syntax
subtract(duration)
subtract(duration, options)
Parameters
duration
-
A string, an object, or a
Temporal.Duration
instance representing a duration to subtract from 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.ZonedDateTime
object representing the date-time specified by the original ZonedDateTime
, minus the duration.
Description
Examples
Subtracting a duration
const start = Temporal.ZonedDateTime.from(
"2021-01-01T12:34:56-05:00[America/New_York]",
);
const end = start.subtract({
years: 1,
months: 2,
weeks: 3,
days: 4,
hours: 5,
minutes: 6,
seconds: 7,
milliseconds: 8,
});
console.log(end.toString()); // 2019-10-07T07:28:48.992-04:00[America/New_York]
Specifications
Specification |
---|
Temporal proposal # sec-temporal.zoneddatetime.prototype.subtract |
Browser compatibility
BCD tables only load in the browser