Temporal.ZonedDateTime.prototype.epochMilliseconds
Temporal.ZonedDateTime
实例的 epochMilliseconds
访问器属性返回一个整数,表示自 Unix 纪元(1970 年 1 月 1 日午夜,UTC)到此瞬间所经过的毫秒数。它等同于将 epochNanoseconds
除以 1e6
并向下取整。
epochMilliseconds
的设置器为 undefined
。你无法直接更改此属性。要创建一个具有所需新 epochMilliseconds
值的新 Temporal.ZonedDateTime
对象,请参见下文。
示例
使用 epochMilliseconds
js
const zdt = Temporal.ZonedDateTime.from("2021-08-01T12:34:56.789Z[UTC]");
console.log(zdt.epochMilliseconds); // 1627821296789
const zdt2 = Temporal.ZonedDateTime.from("1969-08-01T12:34:56.789Z[UTC]");
console.log(zdt2.epochMilliseconds); // -13173903211
从 epochMilliseconds 值创建 ZonedDateTime 对象
你可以通过首先使用 Temporal.Instant.fromEpochMilliseconds()
构造一个 Temporal.Instant
对象,然后使用 Temporal.Instant.prototype.toZonedDateTimeISO()
将其转换为 Temporal.ZonedDateTime
对象来从 epochMilliseconds
值创建 Temporal.ZonedDateTime
对象。
js
const epochMilliseconds = 1627821296789;
const instant = Temporal.Instant.fromEpochMilliseconds(epochMilliseconds);
const zdt = instant.toZonedDateTimeISO("UTC");
console.log(zdt.toString()); // 2021-08-01T12:34:56.789+00:00[UTC]
或者,使用 Temporal.ZonedDateTime()
构造函数,但首先将毫秒转换为纳秒。
js
const epochMilliseconds = 1627821296789;
const epochNanoseconds = BigInt(epochMilliseconds) * 1_000_000n;
const zdt = new Temporal.ZonedDateTime(epochNanoseconds, "UTC");
console.log(zdt.toString()); // 2021-08-01T12:34:56.789+00:00[UTC]
规范
规范 |
---|
Temporal # sec-get-temporal.zoneddatetime.prototype.epochmilliseconds |
浏览器兼容性
加载中…