Temporal.ZonedDateTime.prototype.second
Temporal.ZonedDateTime 实例的 second 访问器属性返回一个从 0 到 59 的整数,表示此时间的秒组件。
second 的设置访问器是 undefined。你不能直接修改此属性。请使用 with() 方法创建一个新的 Temporal.ZonedDateTime 对象,其中包含所需的新值。
有关一般信息和更多示例,请参阅 Temporal.PlainTime.prototype.second。
对于 ZonedDateTime,由于偏移量变化,second 可能是非连续的。虽然这比 hour 或 minute 的变化罕见得多(因为夏令时通常是整小时的偏移),但仍然可能发生。
示例
使用 second
js
const dt = Temporal.ZonedDateTime.from(
"2021-07-01T12:34:56.123456789-04:00[America/New_York]",
);
console.log(dt.second); // 56
非连续的 second
通常,second 总是从 0 到 59,然后回到 0,即使经过夏令时转换也是如此。在一种特殊情况下,秒可能不是连续的:即时区的小时标准化。在 20 世纪早期,大多数国家使用自己的时区,这些时区通常不是与 UTC 的整小时偏移。例如,巴黎曾经有 UTC+0:09:21 的偏移量,在 1911 年 3 月 11 日改为 UTC+0。
js
const dt = Temporal.ZonedDateTime.from(
"1911-03-10T23:59:59+00:09:21[Europe/Paris]",
);
console.log(dt.second); // 59
const dt2 = dt.add({ seconds: 1 });
console.log(dt2.second); // 39
console.log(dt2.toString()); // 1911-03-10T23:50:39+00:00[Europe/Paris]
因此,在操作日期和时间时,应始终首选 add() 和 subtract(),而不是直接更改 second 属性。
规范
| 规范 |
|---|
| Temporal # sec-get-temporal.zoneddatetime.prototype.second |
浏览器兼容性
加载中…
另见
Temporal.ZonedDateTimeTemporal.ZonedDateTime.prototype.with()Temporal.ZonedDateTime.prototype.add()Temporal.ZonedDateTime.prototype.subtract()Temporal.ZonedDateTime.prototype.millisecondTemporal.ZonedDateTime.prototype.microsecondTemporal.ZonedDateTime.prototype.nanosecondTemporal.PlainTime.prototype.second