Temporal.Instant.prototype.epochMilliseconds

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The epochMilliseconds accessor property of Temporal.Instant instances returns an integer representing the number of milliseconds elapsed since the Unix epoch (midnight at the beginning of January 1, 1970, UTC) to this instant. It is equivalent to dividing epochNanoseconds by 1e6 and flooring the result.

The set accessor of epochMilliseconds is undefined. You cannot change this property directly. To create a new Temporal.Instant object with the desired new epochMilliseconds value, use the add() or subtract() method with the appropriate duration.

Examples

Using epochMilliseconds

js
const instant = Temporal.Instant.from("2021-08-01T12:34:56.789Z");
console.log(instant.epochMilliseconds); // 1627821296789

const instant2 = Temporal.Instant.from("1969-08-01T12:34:56.789Z");
console.log(instant2.epochMilliseconds); // -13173903211

Changing epochMilliseconds

This is the method that allows you to move by any amount of time:

js
const instant = Temporal.Instant.from("2021-08-01T12:34:56.789Z");
const instant1hourLater = instant.add({ hours: 1 });
console.log(instant1hourLater.epochMilliseconds); // 1627824896789

If you already know the change in milliseconds, you can also directly construct a new Temporal.Instant object:

js
const instant = Temporal.Instant.from("2021-08-01T12:34:56.789Z");
const instant1hourLater = Temporal.Instant.fromEpochMilliseconds(
  instant.epochMilliseconds + 3600000,
);
console.log(instant1hourLater.epochMilliseconds); // 1627824896789

Specifications

Specification
Temporal proposal
# sec-get-temporal.instant.prototype.epochmilliseconds

Browser compatibility

BCD tables only load in the browser

See also