Temporal.ZonedDateTime.prototype.until()
Baseline Ограниченная доступность
Эта функция не входит в Baseline, поскольку не работает в некоторых наиболее популярных браузерах.
Метод until() экземпляров Temporal.ZonedDateTime возвращает новый объект Temporal.Duration, представляющий промежуток времени от этой даты и времени до другой даты и времени (в форме, преобразуемой с помощью Temporal.ZonedDateTime.from()). Промежуток положительный, если другая дата и время идут после этой даты и времени, и отрицательный, если до неё.
Этот метод не выполняет other - this. Чтобы выполнить this - other, используйте метод since().
Синтаксис
until(other) until(other, options)
Параметры
-
other - Строка, объект или экземпляр
Temporal.ZonedDateTime, представляющий дату и время, из которой вычитается эта дата и время. Он преобразуется в объектTemporal.ZonedDateTimeс помощью того же алгоритма, что иTemporal.ZonedDateTime.from(). У него должен быть тот же календарь, что и уthis. -
optionsНеобязательный - Те же параметры, что и у
since().
Возвращаемое значение
Новый объект Temporal.Duration, представляющий промежуток времени от этой даты и времени до other. Промежуток положительный, если other идет после этой даты и времени, и отрицательный, если до неё.
Исключения
-
RangeError - Выбрасывается в одном из следующих случаев:
-
У
otherкалендарь отличается от календаряthis. - Недопустимо любое из значений параметров.
-
У
otherчасовой пояс отличается от часового поясаthis, аlargestUnitравен"days"или больше.
-
У
Примеры
Использование until()
const flight = Temporal.ZonedDateTime.from(
"2024-12-21T13:31:00-05:00[America/New_York]",
);
const now = Temporal.Now.zonedDateTimeISO("America/New_York").round("second");
if (Temporal.ZonedDateTime.compare(flight, now) < 0) {
console.error(
"The flight is already in the past. The result may not make sense.",
);
}
const duration = now.until(flight, { largestUnit: "days" });
console.log(`The flight is in ${duration.toLocaleString("en-US")}`);
Дополнительные примеры см. в разделе since().
Спецификации
| Спецификация |
|---|
| Temporal # sec-temporal.zoneddatetime.prototype.until |
Совместимость с браузерами
| Настольные | Мобильные | Серверные | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari на iOS | Samsung Internet | WebView для Android | WebView на iOS | Bun | Deno | Node.js | |
until |
144 |
144 |
139 |
128 |
предварительная версия |
144 |
139 |
95 |
Нет |
Нет |
144 |
Нет |
1.4.0 |
2.7 |
26.0.0 |
См. также
Temporal.ZonedDateTimeTemporal.DurationTemporal.ZonedDateTime.prototype.add()Temporal.ZonedDateTime.prototype.subtract()Temporal.ZonedDateTime.prototype.since()
© 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/until