Temporal.PlainYearMonth.prototype.subtract()
Базовая поддержка Ограниченная доступность
Эта функция не является Базовой, потому что она не работает в некоторых из наиболее широко используемых браузеров.
Метод subtract() экземпляров Temporal.PlainYearMonth возвращает новый объект Temporal.PlainYearMonth, представляющий данный год-месяц, сдвинутый назад на заданную длительность (в форме, преобразуемой с помощью Temporal.Duration.from()).
Если вы хотите вычесть два года-месяца и получить длительность, используйте вместо этого since() или until().
Синтаксис
subtract(duration) subtract(duration, options)
Параметры
-
duration - Строка, объект или экземпляр
Temporal.Duration, представляющий длительность, которую нужно вычесть из этого года-месяца. Он преобразуется в объектTemporal.Durationс использованием того же алгоритма, что иTemporal.Duration.from(). -
optionsНеобязательно - Объект, содержащий следующее свойство:
-
overflowНеобязательно - Строка, определяющая поведение, когда компонент даты выходит за пределы диапазона. Возможные значения:
-
"constrain"(по умолчанию) - Компонент даты ограничивается допустимым диапазоном.
-
"reject" - Генерируется
RangeError, если компонент даты выходит за пределы диапазона.
-
-
Возвращаемое значение
Новый объект Temporal.PlainYearMonth, представляющий год-месяц, заданный исходным PlainYearMonth, за вычетом длительности.
Исключения
-
RangeError - Генерируется, если результат не находится в представимом диапазоне, который составляет ±(108 + 1) дней, или около ±273 972,6 лет, от эпохи Unix.
Описание
Вычитание длительности эквивалентно добавлению ее отрицания, поэтому применяются все те же соображения. Вычитание положительной длительности начинается с конца года-месяца и движется назад, поэтому любое приращение, меньшее длины месяца, игнорируется.
Примеры
Вычитание длительности
const start = Temporal.PlainYearMonth.from("2022-01");
const end = start.subtract({ years: 1, months: 2, weeks: 3, days: 4 });
console.log(end.toString()); // 2020-11
Дополнительные примеры см. в add().
Спецификации
Совместимость с браузерами
| Desktop | Mobile | Server | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 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.PlainYearMonthTemporal.DurationTemporal.PlainYearMonth.prototype.add()Temporal.PlainYearMonth.prototype.since()Temporal.PlainYearMonth.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/PlainYearMonth/subtract