Temporal.PlainDate.prototype.withCalendar()

可用性有限

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

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

withCalendar() 方法是 Temporal.PlainDate 实例的一个方法,它返回一个新的 Temporal.PlainDate 对象,该对象表示当前日期在新的日历系统中解析后的结果。由于所有 Temporal 对象都被设计为不可变的,因此此方法实际上充当了该日期的 calendarId 属性的设置器。

要替换日期的组件属性,请改用 with() 方法。

语法

js
withCalendar(calendar)

参数

calendar

一个字符串,对应于 calendarId 属性。请参阅 Intl.supportedValuesOf() 获取常用日历类型的列表。

返回值

一个新的 Temporal.PlainDate 对象,表示原始 PlainDate 指定的日期,但在新的日历系统中解析。

异常

TypeError

如果 calendar 不是字符串,则抛出错误。

RangeError

如果 calendar 不是有效的日历标识符,则抛出错误。

示例

使用 withCalendar()

js
const date = Temporal.PlainDate.from("2021-07-01");
const newDate = date.withCalendar("islamic-umalqura");
console.log(newDate.toLocaleString("en-US", { calendar: "islamic-umalqura" }));
// 11/21/1442 AH

规范

规范
Temporal
# sec-temporal.plaindate.prototype.withcalendar

浏览器兼容性

另见