在day.js中,我们可以使用startOf来获取一个时间的开始,使用endOf来获取一个时间的结束。两者均返回一个dayjs对象。

支持的单位列表:

单位 缩写 详情
year y 今年第一天或最后一天
quarter Q 本季度第一天或最后一天( 依赖 QuarterOfYear 插件 )
month M 本月第一天或最后一天
week w 本周的第一天或最后一天 (取决于国际化设置)
isoWeek 本周的第一天或最后一天 (根据 ISO 8601) ( 依赖 IsoWeek 插件 )
date D 当天 00:00 或当天 59:59
day d 当天 00:00 或当天 59:59
hour h 当前时间0 分、0 秒、0 毫秒或当前时间,59分、59秒、59毫秒
minute m 当前时间,0 秒、0 毫秒或当前时间,59秒、59毫秒
second s 当前时间,0 毫秒或当前时间,59毫秒

注意:传入的单位对大小写不敏感,支持缩写和复数。但是缩写形式是区分大小写的,比如表中的D和d、M和m表示的是不同的单位。

示例:

//获取当年的第一天并转换为字符串格式,输出:2022-01-01 00:00:00
dayjs().startOf('year').format('YYYY-MM-DD HH:mm:ss')

//获取本周的最后一天并转换为字符串格式,输出:2022-11-19 23:59:59
dayjs().endOf('year').format('YYYY-MM-DD HH:mm:ss')
(adsbygoogle = window.adsbygoogle || []).push({});