JavaScript Temporal Duration subtract()
Example
const d1 = Temporal.Duration.from({ hours:2, minutes:30 });
const d2 = d1.subtract({ hours:1, minutes:30 });
Try it Yourself »
Description
The subtract() method returns a new duration with a duration subtracted.
The subtract() method does not change the original duration.
Syntax
duration.subtract(other)
Parameters
| Parameter | Description |
| other | A string or an object representing a duration. |
Return Value
| Type | Description |
| Object | A new duration with a duration subtracted. |
Browser Support
Temporal is a major update to the JavaScript standard (TC39).
It is currently fully supported in Chrome, Edge, and Firefox, and is expected to reach full availability across browsers throughout 2026.
| Chrome 144 |
Edge 144 |
Firefox 139 |
Safari |
Opera |
| Jan 2026 | Jan 2026 | May 2025 | 🚫 | 🚫 |
Opera Support
Opera support will probably appear 1-3 browser cycles after Chromium, which often means a few months later.
Safari Support
As of March 2026, Safari has not yet announced a confirmed release date for stable support of the JavaScript Temporal API.
However, the implementation is actively in development and can be tested today in Safari Technology Preview by enabling the --use-temporal runtime flag.
Polyfill
Until Opera and Safari supports Temporal natively, use the official polyfill.
This Polyfill allows Temporal code to run in all browsers today:
Example
<script
src="https://cdn.jsdelivr.net/npm/@js-temporal/polyfill/dist/index.umd.js">
</script>
<script>
// Now you can use Temporal
const today = Temporal.Now.plainDateISO();
</script>