Temporal.PlainTime.prototype.add()
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 add()
method of Temporal.PlainTime
instances returns a new Temporal.PlainTime
object representing this time moved forward by a given duration (in a form convertible by Temporal.Duration.from()
), wrapping around the clock if necessary.
Syntax
add(duration)
Parameters
duration
-
A string, an object, or a
Temporal.Duration
instance representing a duration to add to this time. It is converted to aTemporal.Duration
object using the same algorithm asTemporal.Duration.from()
.
Return value
A new Temporal.PlainTime
object representing the time specified by the original PlainTime
, plus the duration. Any units above hours
are ignored, and if the time goes past midnight, it wraps around to the next day.
Adding a duration is equivalent to subtracting its negation.
Examples
Adding a duration
const start = Temporal.PlainTime.from("12:34:56");
const end = start.add({ hours: 1, minutes: 30 });
console.log(end.toString()); // 14:04:56
const end2 = start.add({ hours: -1, minutes: -30 });
console.log(end2.toString()); // 11:04:56
const distance = Temporal.PlainTime.from("00:00:00").until("01:23:45"); // 1h 23m 45s
const end3 = start.add(distance);
console.log(end3.toString()); // 13:58:41
Time wrapping
If the time goes past midnight, it wraps around to the next day:
const start = Temporal.PlainTime.from("12:34:56");
const end = start.add({ hours: 12 });
console.log(end.toString()); // 00:34:56
Specifications
Specification |
---|
Temporal proposal # sec-temporal.plaintime.prototype.add |
Browser compatibility
BCD tables only load in the browser