Temporal.ZonedDateTime.prototype.subtract()
Базовая поддержка Ограниченная доступность
Эта функция не является базовой, поскольку она не работает в некоторых наиболее широко используемых браузерах.
Метод subtract() экземпляров Temporal.ZonedDateTime возвращает новый объект Temporal.ZonedDateTime, представляющий эту дату-время, смещенную назад на заданную продолжительность (в форме, преобразуемой Temporal.Duration.from()).
Если вы хотите вычесть две даты-времени и получить продолжительность, используйте вместо этого since() или until().
Синтаксис
subtract(duration) subtract(duration, options)
Параметры
-
duration - Строка, объект или экземпляр
Temporal.Duration, представляющий продолжительность, которую нужно вычесть из этой даты-времени. Он преобразуется в объектTemporal.Durationс использованием того же алгоритма, что иTemporal.Duration.from(). -
optionsНеобязательно - Объект, содержащий следующее свойство:
-
overflowНеобязательно - Строка, указывающая поведение, когда компонент даты находится вне диапазона. Возможные значения:
-
"constrain"(по умолчанию) - Компонент даты ограничивается допустимым диапазоном.
-
"reject" - Выбрасывается исключение
RangeError, если компонент даты находится вне диапазона.
-
Возвращаемое значение
Новый объект Temporal.ZonedDateTime, представляющий дату-время, заданную исходным ZonedDateTime, за вычетом продолжительности.
Исключения
-
RangeError - Выбрасывается, если результат не находится в представимом диапазоне, который составляет ±108 дней, или около ±273 972,6 лет, от эпохи Unix.
Описание
Вычитание продолжительности эквивалентно добавлению её отрицания, поэтому применяются те же самые соображения.
Примеры
Вычитание продолжительности
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]
Спецификации
Совместимость с браузерами
| Десктопные | Мобильные | Серверные | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
subtract |
144 |
144 |
139 |
128 |
preview |
144 |
139 |
95 |
No |
No |
144 |
No |
1.4.0 |
2.7 |
26.0.0 |
См. также
Temporal.ZonedDateTimeTemporal.DurationTemporal.ZonedDateTime.prototype.add()Temporal.ZonedDateTime.prototype.since()Temporal.ZonedDateTime.prototype.until()
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Temporal/ZonedDateTime/subtract