Temporal.Duration.prototype.sign

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 sign accessor property of Temporal.Duration instances returns 1 if this duration is positive, -1 if negative, and 0 if zero. Because a duration never has mixed signs, the sign of a duration is determined by the sign of any of its non-zero fields.

Examples

Using sign

js
const d1 = Temporal.Duration.from({ hours: 1, minutes: 30 });
const d2 = Temporal.Duration.from({ hours: -1, minutes: -30 });
const d3 = Temporal.Duration.from({ hours: 0 });

console.log(d1.sign); // 1
console.log(d2.sign); // -1
console.log(d3.sign); // 0

console.log(d1.abs().sign); // 1
console.log(d2.abs().sign); // 1
console.log(d3.abs().sign); // 0

console.log(d1.negated().sign); // -1
console.log(d2.negated().sign); // 1
console.log(d3.negated().sign); // 0

Specifications

Specification
Temporal proposal
# sec-get-temporal.duration.prototype.sign

Browser compatibility

BCD tables only load in the browser

See also