Temporal.Instant.fromEpochNanoseconds()

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 Temporal.Instant.fromEpochNanoseconds() static method creates a new Temporal.Instant object from the number of nanoseconds since the Unix epoch (midnight at the beginning of January 1, 1970, UTC).

To convert a Date object to a Temporal.Instant object, use Date.prototype.toTemporalInstant() instead.

Syntax

js
Temporal.Instant.fromEpochNanoseconds(epochNanoseconds)

Parameters

epochNanoseconds

A BigInt representing the number of nanoseconds since the Unix epoch.

Return value

A new Temporal.Instant object representing the instant in time specified by epochNanoseconds.

Exceptions

RangeError

Thrown if epochNanoseconds is outside the range of a representable instant, which is ±108 days (±8.64e21 nanoseconds, or about ±273,972.6 years).

Examples

Using Temporal.Instant.fromEpochNanoseconds()

js
const instant = Temporal.Instant.fromEpochNanoseconds(0n);
console.log(instant.toString()); // 1970-01-01T00:00:00Z
const vostok1Liftoff =
  Temporal.Instant.fromEpochNanoseconds(-275248380000000000n);
console.log(vostok1Liftoff.toString()); // 1961-04-12T06:07:00Z
const sts1Liftoff = Temporal.Instant.fromEpochNanoseconds(355924804000000000n);
console.log(sts1Liftoff.toString()); // 1981-04-12T12:00:04Z

Specifications

Specification
Temporal proposal
# sec-temporal.instant.fromepochnanoseconds

Browser compatibility

BCD tables only load in the browser

See also