Temporal.PlainDateTime.prototype.toJSON()
toJSON()
方法是 Temporal.PlainDateTime
实例的一个方法,它返回一个字符串,表示此日期-时间与调用 toString()
时相同的 RFC 9557 格式。它旨在被 JSON.stringify()
隐式调用。
语法
js
toJSON()
参数
无。
返回值
一个字符串,表示给定的日期-时间,采用 RFC 9557 格式,如果日历注解不是 "iso8601"
,则会包含日历注解。
描述
当 Temporal.PlainDateTime
对象被字符串化时,toJSON()
方法会被 JSON.stringify()
自动调用。该方法通常旨在默认情况下有效地序列化 Temporal.PlainDateTime
对象,这可以通过 Temporal.PlainDateTime.from()
函数作为 JSON.parse()
的 reviver 来反序列化。
示例
使用 toJSON()
js
const dt = Temporal.PlainDateTime.from({ year: 2021, month: 8, day: 1 });
const dtStr = dt.toJSON(); // '2021-08-01T00:00:00'
const dt2 = Temporal.PlainDateTime.from(dtStr);
JSON 序列化和解析
此示例显示了如何无需额外工作即可将 Temporal.PlainDateTime
序列化为 JSON,以及如何将其解析回来。
js
const dt = Temporal.PlainDateTime.from({ year: 2021, month: 8, day: 1 });
const jsonStr = JSON.stringify({ nextBilling: dt }); // '{"nextBilling":"2021-08-01T00:00:00"}'
const obj = JSON.parse(jsonStr, (key, value) => {
if (key === "nextBilling") {
return Temporal.PlainDateTime.from(value);
}
return value;
});
规范
规范 |
---|
Temporal # sec-temporal.plaindatetime.prototype.tojson |
浏览器兼容性
加载中…