Spec-Zone.ru › JavaScript

Temporal.PlainDate.prototype.toZonedDateTime()

Базовая совместимость Ограниченная доступность

Эта функция не является базовой, поскольку она не работает в некоторых из наиболее широко используемых браузеров.

Метод toZonedDateTime() экземпляров Temporal.PlainDate возвращает новый объект Temporal.ZonedDateTime, представляющий эту дату, предоставленное время и предоставленный часовой пояс в той же календарной системе.

Синтаксис

toZonedDateTime(timeZone)
toZonedDateTime(info)

Параметры

timeZone
Либо строка, либо экземпляр Temporal.ZonedDateTime, представляющий опцию timeZone. Это удобная перегрузка, поэтому toZonedDateTime(timeZone) эквивалентно toZonedDateTime({ timeZone }), где timeZone является строкой или Temporal.ZonedDateTime. Эта перегрузка выбирается, когда первый аргумент не является объектом, или свойство timeZone объекта равно undefined (поскольку экземпляры ZonedDateTime вместо этого имеют свойство timeZoneId).
info
Объект, содержащий некоторые или все из следующих свойств (в порядке их извлечения и проверки):
plainTime Необязательный
Строка, объект или экземпляр Temporal.PlainTime, представляющий компонент времени результирующего ZonedDateTime. Он преобразуется в объект Temporal.PlainTime с использованием того же алгоритма, что и Temporal.PlainTime.from(). По умолчанию используется первое действительное время в этом часовом поясе в эту календарную дату, которое обычно является "00:00:00", но может отличаться, если, например, переход на летнее время пропускает полночь.
timeZone
Либо строка, либо экземпляр Temporal.ZonedDateTime, представляющий часовой пояс для использования. Если это экземпляр Temporal.ZonedDateTime, используется его часовой пояс. Если это строка, она может быть именованным идентификатором часового пояса, идентификатором смещения часового пояса или строкой даты-времени, содержащей идентификатор часового пояса или смещение (см. часовые пояса и смещения для получения дополнительной информации).

Возвращаемое значение

Новый объект Temporal.ZonedDateTime, представляющий дату и время, указанные этой датой, plainTime и timeZone, интерпретированные в календарной системе этой даты.

В случае неоднозначностей всегда используется поведение compatible: если время попадает в пробел (gap), мы продвигаемся вперед на длину пробела; если время попадает в неоднозначность (ambiguity), мы выбираем более раннюю из двух возможностей. Это означает, что результирующий ZonedDateTime может иметь потенциально другую дату или время, чем входные данные.

Исключения

TypeError
Выдается, если timeZone не является строкой или экземпляром Temporal.ZonedDateTime.
RangeError
Выдается, если timeZone является строкой, которая не является допустимым идентификатором часового пояса.

Примеры

Использование toZonedDateTime()

const summer = Temporal.PlainDate.from("2021-07-01");
// Just time zone
const summerTime = summer.toZonedDateTime("America/New_York");
console.log(summerTime.toString()); // 2021-07-01T00:00:00-04:00[America/New_York]

const winter = Temporal.PlainDate.from("2021-01-01");
// Time zone and time
const winterTime = winter.toZonedDateTime({
  plainTime: "12:34:56",
  timeZone: "America/New_York",
});
console.log(winterTime.toString()); // 2021-01-01T12:34:56-05:00[America/New_York]

const spring = Temporal.PlainDate.from("2021-03-01");
// Time zone as object and time as object
const springTime = spring.toZonedDateTime({
  plainTime: summerTime.toPlainTime(),
  timeZone: winterTime,
});
console.log(springTime.toString()); // 2021-03-01T00:00:00-05:00[America/New_York]

Спецификации

Спецификация
Temporal
# sec-temporal.plaindate.prototype.tozoneddatetime

Совместимость с браузерами

Десктоп Мобильные Сервер
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
toZonedDateTime
144
144
139
128
предпросмотр
144
139
95
Нет
Нет
144
Нет
1.4.0
2.7
26.0.0

Смотрите также

  • Temporal.PlainDate
  • Temporal.ZonedDateTime
  • Temporal.PlainTime
  • Temporal.PlainDate.prototype.toPlainDateTime()
  • Temporal.PlainDate.prototype.toPlainMonthDay()
  • Temporal.PlainDate.prototype.toPlainYearMonth()
  • Temporal.ZonedDateTime.prototype.toPlainDate()

© 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/PlainDate/toZonedDateTime

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API