Temporal.Duration.prototype.months

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

months 访问器属性,属于 Temporal.Duration 实例,返回一个整数,表示 duration 中的月数。

除非 duration 是平衡的,否则您无法确定此值的范围,但可以通过检查 duration 的 sign 属性来了解其符号。如果它被平衡到高于月份的单位,则 months 的绝对值的范围取决于日历(一年中有多少个月)。

months 的 set 访问器是 undefined。您不能直接更改此属性。请使用 with() 方法创建一个具有所需新值的 Temporal.Duration 新对象。

示例

使用 months

js
const d1 = Temporal.Duration.from({ years: 1, months: 1 });
const d2 = Temporal.Duration.from({ years: -1, months: -1 });
const d3 = Temporal.Duration.from({ years: 1 });
const d4 = Temporal.Duration.from({ months: 12 });

console.log(d1.months); // 1
console.log(d2.months); // -1
console.log(d3.months); // 0
console.log(d4.months); // 12

// Balance d4
const d4Balanced = d4.round({
  largestUnit: "years",
  relativeTo: Temporal.PlainDate.from("2021-01-01"), // ISO 8601 calendar
});
console.log(d4Balanced.months); // 0
console.log(d4Balanced.years); // 1

规范

规范
Temporal
# sec-get-temporal.duration.prototype.months

浏览器兼容性

另见