docs/docs/cn/template-print/syntax/formatters/date-formatting.md
格式化日期,接受输出格式模式 patternOut,输入格式模式 patternIn(默认为 ISO 8601)。
{d.createdAt:formatD(YYYY-MM-DD)} // 输出 2024-01-15
{d.createdAt:formatD(YYYY年M月D日)} // 输出 2024年1月15日
{d.updatedAt:formatD(YYYY年M月D日 HH:mm)} // 输出 2024年1月15日 14:30
{d.orderDate:formatD(YYYY/MM/DD HH:mm:ss)} // 输出 2024/01/15 14:30:25
{d.birthday:formatD(M月D日)} // 输出 1月15日
{d.meetingTime:formatD(HH:mm)} // 输出 14:30
{d.deadline:formatD(YYYY年M月D日 dddd)} // 输出 2024年1月15日 星期一
'20160131':formatD(L) // 输出 01/31/2016
'20160131':formatD(LL) // 输出 January 31, 2016
'20160131':formatD(LLLL) // 输出 Sunday, January 31, 2016 12:00 AM
'20160131':formatD(dddd) // 输出 Sunday
输出为指定格式的日期字符串。
在日期上添加指定的时间量。支持单位:day、week、month、quarter、year、hour、minute、second、millisecond。
参数:
'2017-05-10T15:57:23.769561+03:00':addD('3', 'day') // 输出 "2017-05-13T12:57:23.769Z"
'2017-05-10 15:57:23.769561+03:00':addD('3', 'month') // 输出 "2017-08-10T12:57:23.769Z"
'20160131':addD('3', 'day') // 输出 "2016-02-03T00:00:00.000Z"
'20160131':addD('3', 'month') // 输出 "2016-04-30T00:00:00.000Z"
'31-2016-01':addD('3', 'month', 'DD-YYYY-MM') // 输出 "2016-04-30T00:00:00.000Z"
输出为添加时间后的新日期。
从日期中减去指定的时间量。参数同 addD。
'2017-05-10T15:57:23.769561+03:00':subD('3', 'day') // 输出 "2017-05-07T12:57:23.769Z"
'2017-05-10 15:57:23.769561+03:00':subD('3', 'month') // 输出 "2017-02-10T12:57:23.769Z"
'20160131':subD('3', 'day') // 输出 "2016-01-28T00:00:00.000Z"
'20160131':subD('3', 'month') // 输出 "2015-10-31T00:00:00.000Z"
'31-2016-01':subD('3', 'month', 'DD-YYYY-MM') // 输出 "2015-10-31T00:00:00.000Z"
输出为减去时间后的新日期。
将日期设置为指定时间单位的起始时刻。
参数:
'2017-05-10T15:57:23.769561+03:00':startOfD('day') // 输出 "2017-05-10T00:00:00.000Z"
'2017-05-10 15:57:23.769561+03:00':startOfD('month') // 输出 "2017-05-01T00:00:00.000Z"
'20160131':startOfD('day') // 输出 "2016-01-31T00:00:00.000Z"
'20160131':startOfD('month') // 输出 "2016-01-01T00:00:00.000Z"
'31-2016-01':startOfD('month', 'DD-YYYY-MM') // 输出 "2016-01-01T00:00:00.000Z"
输出为起始时刻的日期字符串。
将日期设置为指定时间单位的结束时刻。
参数同上。
'2017-05-10T15:57:23.769561+03:00':endOfD('day') // 输出 "2017-05-10T23:59:59.999Z"
'2017-05-10 15:57:23.769561+03:00':endOfD('month') // 输出 "2017-05-31T23:59:59.999Z"
'20160131':endOfD('day') // 输出 "2016-01-31T23:59:59.999Z"
'20160131':endOfD('month') // 输出 "2016-01-31T23:59:59.999Z"
'31-2016-01':endOfD('month', 'DD-YYYY-MM') // 输出 "2016-01-31T23:59:59.999Z"
输出为结束时刻的日期字符串。
计算两个日期之间的差值,并以指定单位输出。支持的输出单位包括:
day(s) 或 dweek(s) 或 wquarter(s) 或 Qmonth(s) 或 Myear(s) 或 yhour(s) 或 hminute(s) 或 msecond(s) 或 smillisecond(s) 或 ms(默认单位)参数:
'20101001':diffD('20101201') // 输出 5270400000
'20101001':diffD('20101201', 'second') // 输出 5270400
'20101001':diffD('20101201', 's') // 输出 5270400
'20101001':diffD('20101201', 'm') // 输出 87840
'20101001':diffD('20101201', 'h') // 输出 1464
'20101001':diffD('20101201', 'weeks') // 输出 8
'20101001':diffD('20101201', 'days') // 输出 61
'2010+10+01':diffD('2010=12=01', 'ms', 'YYYY+MM+DD', 'YYYY=MM=DD') // 输出 5270400000
输出为两个日期之间的时间差,单位按指定转换。
将日期从一种格式转换为另一种格式。(不推荐使用)
参数:
'20160131':convDate('YYYYMMDD', 'L') // 输出 "01/31/2016"
'20160131':convDate('YYYYMMDD', 'LL') // 输出 "January 31, 2016"
'20160131':convDate('YYYYMMDD', 'LLLL') // 输出 "Sunday, January 31, 2016 12:00 AM"
'20160131':convDate('YYYYMMDD', 'dddd') // 输出 "Sunday"
1410715640:convDate('X', 'LLLL') // 输出 "Sunday, September 14, 2014 7:27 PM"
输出为转换后的日期字符串。
常用日期格式说明(参照 DayJS 说明):
X:Unix 时间戳(秒),如 1360013296x:Unix 毫秒时间戳,如 1360013296123YY:两位年份,如 18YYYY:四位年份,如 2018M、MM、MMM、MMMM:月份(数字、两位、缩写、全称)D、DD:日(数字、两位)d、dd、ddd、dddd:星期(数字、最简、简写、全称)H、HH、h、hh:小时(24 小时制或 12 小时制)m、mm:分钟s、ss:秒SSS:毫秒(3 位)Z、ZZ:UTC 偏移,如 +05:00 或 +0500A、a:AM/PMQ:季度(1-4)Do:带序号的日期,如 1st, 2nd, …LT、LTS、L、LL、LLL、LLLL 等。