Temporal.ZonedDateTime.prototype.offsetNanoseconds
Базовый уровень Ограниченная доступность
Эта функция не является базовой, поскольку она не работает в некоторых наиболее широко используемых браузерах.
Свойство доступа offsetNanoseconds экземпляров Temporal.ZonedDateTime возвращает целое число, представляющее смещение, используемое для интерпретации внутреннего момента времени, в виде количества наносекунд (положительного или отрицательного). Значение является безопасным целым числом, поскольку оно меньше суток, что составляет 8,64e15 наносекунд.
Сеттер-аксессор offsetNanoseconds является undefined. Вы не можете изменить это свойство напрямую. Используйте метод with() для создания нового объекта Temporal.ZonedDateTime с желаемым новым значением offset (что также изменит это свойство) или используйте метод withTimeZone() для создания нового объекта Temporal.ZonedDateTime в другом часовом поясе.
Примеры
Использование offsetNanoseconds
const dt = Temporal.ZonedDateTime.from( "2021-07-01T12:00:00-07:00[America/Los_Angeles]", ); console.log(dt.offsetNanoseconds); // -25200000000000 const dt2 = Temporal.ZonedDateTime.from( "2021-07-01T12:00:00+08:00[Asia/Shanghai]", ); console.log(dt2.offsetNanoseconds); // 28800000000000 const dt3 = Temporal.ZonedDateTime.from( "1900-01-01T00:00:00+00:09:21[Europe/Paris]", ); console.log(dt3.offsetNanoseconds); // 561000000000
Вот один из способов получить ZonedDateTime, представляющий то же самое время по настенным часам в UTC:
const dt = Temporal.ZonedDateTime.from(
"2021-07-01T12:00:00-07:00[America/Los_Angeles]",
);
const dtInUTC = dt.add({ nanoseconds: dt.offsetNanoseconds });
console.log(dtInUTC.withTimeZone("UTC").toString()); // "2021-07-01T12:00:00+00:00[UTC]"
Вот лучший способ получить тот же результат:
const dt = Temporal.ZonedDateTime.from(
"2021-07-01T12:00:00-07:00[America/Los_Angeles]",
);
const dtInUTC = dt.toPlainDateTime().toZonedDateTime("UTC");
console.log(dtInUTC.toString()); // "2021-07-01T12:00:00+00:00[UTC]"
Спецификации
Совместимость с браузерами
| Настольные | Мобильные | Серверные | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 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 | |
offsetNanoseconds |
144 |
144 |
139 |
128 |
preview |
144 |
139 |
95 |
Нет |
Нет |
144 |
Нет |
1.4.0 |
2.7 |
26.0.0 |
Смотрите также
Temporal.ZonedDateTimeTemporal.ZonedDateTime.prototype.with()Temporal.ZonedDateTime.prototype.withTimeZone()Temporal.ZonedDateTime.prototype.offsetTemporal.ZonedDateTime.prototype.timeZoneId
© 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/offsetNanoseconds