Documentación offline JavaScript main

Temporal.Instant.prototype.subtract()

main Documentación oficial Licencia CC-BY-SA-2.5Descargado el 2026-08-02

En esta página

The subtract() method of {{jsxref("Temporal.Instant")}} instances returns a new Temporal.Instant object representing this instant moved backward by a given duration (in a form convertible by {{jsxref("Temporal/Duration/from", "Temporal.Duration.from()")}}).

If you want to subtract two instants and get a duration, use {{jsxref("Temporal/Instant/since", "since()")}} or {{jsxref("Temporal/Instant/until", "until()")}} instead.

Syntax#

subtract(duration)

Parameters#

  • duration
  • : A string, an object, or a {{jsxref("Temporal.Duration")}} instance representing a duration to subtract from this instant. It is converted to a Temporal.Duration object using the same algorithm as {{jsxref("Temporal/Duration/from", "Temporal.Duration.from()")}}.

Return value#

A new {{jsxref("Temporal.Instant")}} object representing subtracting duration from this instant. If duration is positive, then the returned instant is earlier than this instant; if duration is negative, then the returned instant is later than this instant.

Exceptions#

  • {{jsxref("RangeError")}}
  • : Thrown in one of the following cases:
    • duration is a calendar duration (it has a non-zero years, months, or weeks), or has a non-zero days, because calendar durations are ambiguous without a calendar and time reference.
    • The result is not in the representable range, which is ±108 days, or about ±273,972.6 years, from the Unix epoch.

Description#

Subtracting a duration is equivalent to adding its negation, so all the same considerations apply.

Examples#

Subtracting a Temporal.Duration#

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

For more examples, see {{jsxref("Temporal/Instant/add", "add()")}}.

Specifications#

{{Specifications}}

Browser compatibility#

{{Compat}}

See also#

  • {{jsxref("Temporal.Instant")}}
  • {{jsxref("Temporal.Duration")}}
  • {{jsxref("Temporal/Instant/add", "Temporal.Instant.prototype.add()")}}
  • {{jsxref("Temporal/Instant/since", "Temporal.Instant.prototype.since()")}}
  • {{jsxref("Temporal/Instant/until", "Temporal.Instant.prototype.until()")}}