Temporal.PlainYearMonth.prototype.toString()
toString()
方法是 Temporal.PlainYearMonth
实例的,它返回一个字符串,该字符串表示此年月(year-month)的 RFC 9557 格式。
语法
js
toString()
toString(options)
参数
options
可选-
包含以下属性的对象
calendarName
可选-
是否在返回值中显示日历注释 (
[u-ca=calendar_id]
)。可能的值是:"auto"
(默认值)-
如果日历不是
"iso8601"
,则包含日历注解。如果日历不是"iso8601"
,则包含参考日。 "always"
-
始终包含日历注解。参考日也始终包含。
"never"
-
从不包含日历注解。这使得返回的字符串无法恢复到相同的
Temporal.PlainYearMonth
实例,尽管年月值保持不变。如果日历不是"iso8601"
,则包含参考日。 "critical"
-
始终包含日历注解,并添加一个关键标志:
[!u-ca=calendar_id]
。在将字符串发送到某些系统时很有用,但对 Temporal 本身无用。参考日也始终包含。
返回值
一个 RFC 9557 格式 的字符串,表示此年月。日历注解按指定包含。如果包含日历注解或日历不是 "iso8601"
,则包含参考日。
异常
RangeError
-
如果任何选项无效,则抛出。
TypeError
-
如果
options
不是对象或undefined
,则抛出错误。
示例
使用 toString()
js
const ym = Temporal.PlainYearMonth.from({ year: 2021, month: 8 });
console.log(ym.toString()); // '2021-08'
const ym2 = Temporal.PlainYearMonth.from({
year: 4658,
monthCode: "M08",
calendar: "chinese",
});
console.log(ym2.toString()); // '2021-09-07[u-ca=chinese]'
使用选项
js
const isoYM = Temporal.PlainYearMonth.from({ year: 2021, month: 8 });
const ym = Temporal.PlainYearMonth.from({
year: 4658,
monthCode: "M08",
calendar: "chinese",
});
console.log(isoYM.toString({ calendarName: "auto" })); // '2021-08'
console.log(ym.toString({ calendarName: "auto" })); // '2021-09-07[u-ca=chinese]'
console.log(isoYM.toString({ calendarName: "always" })); // '2021-08-01[u-ca=iso8601]'
console.log(ym.toString({ calendarName: "always" })); // '2021-09-07[u-ca=chinese]'
console.log(isoYM.toString({ calendarName: "never" })); // '2021-08'
console.log(ym.toString({ calendarName: "never" })); // '2021-09-07'
console.log(isoYM.toString({ calendarName: "critical" })); // '2021-08-01[!u-ca=iso8601]'
console.log(ym.toString({ calendarName: "critical" })); // '2021-09-07[!u-ca=chinese]'
规范
规范 |
---|
Temporal # sec-temporal.plainyearmonth.prototype.tostring |
浏览器兼容性
加载中…