W3cubDocs

/JavaScript

Temporal.PlainTime.prototype.nanosecond

Limited availability

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

The nanosecond accessor property of Temporal.PlainTime instances returns an integer from 0 to 999 representing the nanosecond (10-9 second) component of this time.

The set accessor of nanosecond is undefined. You cannot change this property directly. Use the with() method to create a new Temporal.PlainTime object with the desired new value.

Examples

>

Using nanosecond

const time = Temporal.PlainTime.from("12:34:56");
console.log(time.nanosecond); // 0

const time2 = Temporal.PlainTime.from("12:34:56.123456789");
console.log(time2.nanosecond); // 789

Changing nanosecond

const time = Temporal.PlainTime.from("12:34:56");
const newTime = time.with({ nanosecond: 100 });
console.log(newTime.toString()); // 12:34:56.0000001

You can also use add() or subtract() to move a certain number of nanoseconds from the current time.

const time = Temporal.PlainTime.from("12:34:56");
const newTime = time.add({ nanoseconds: 100 });
console.log(newTime.toString()); // 12:34:56.0000001

Specifications

Browser compatibility

Desktop Mobile Server
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
nanosecond 144 144 139 No preview 144 139 No No No 144 No ? 1.40 No

See also

© 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/PlainTime/nanosecond