转换
转换时间戳.unix()
dayjs().startOf('day').unix()
时间戳格式化.format()
dayjs(time * 1000).format('YYYY/MM/DD')
日期比较
时间戳
demo:
const d1 = dayjs(date).startOf('day').unix()
const d2 = dayjs().endOf('day').unix()
判断开始时间 > 结束时间:d1 > d2
使用格式化日期:年-月-日依次比较
demo:
日比较:dayjs(date).format('DD') >= dayjs().format('DD')
基础使用
- 今天(开始- 结束:dayjs().startOf('day') - dayjs().endOf('day')
- 明天
- 明天此时:dayjs().add(1, 'day')
- 明天00点:dayjs().startOf('day').add(1, 'day')
- 昨天
- 开始:dayjs().subtract(1, 'day').startOf('day')
- 结束:dayjs().subtract(1, 'day').endOf('day')
- 近7天(不包含今天):
- 开始:dayjs().subtract(7, 'day').startOf('day')
- 结束:dayjs().subtract(1, 'day').endOf('day')
- 近30天(不包含今天):
- 开始:dayjs().subtract(30, 'day').startOf('day')
- 结束:dayjs().subtract(1, 'day').endOf('day')
扩展
月
1月:dayjs().month(0)
12月:dayjs().month(11)
上个月/下个月:// 获取当月结束日期向前/后推
开始时间:dayjs().date(1)
结束时间:dayjs().date(31)
- 上/下个月:开始,结束
last_month= {
start: dayjs(month).date(1)
end: dayjs().month().endOf('month')
}
or
// 建议使用
last_month= {
start: dayjs('2021/1/1').subtract(1, 'month'),
end: dayjs(start_time).subtract(1, 'month').endOf('month')
}
测试:
dayjs().month(1).endOf('month').format('YYYY-MM-DD')
dayjs('2021/1/12').subtract(1, 'month').startOf('month')
dayjs('2021/1/12').subtract(1, 'month').endOf('month')
- 上/下个月:开始,结束
last_month= {
start: dayjs(date).add(1, 'month').startOf('month')
end: dayjs(date).add(1, 'month').endOf('month')
}
测试:
dayjs('2021/1/12').add(1, 'month').startOf('month')
dayjs('2021/1/12').add(1, 'month').endOf('month')
- 每个月多少天
js获取:new Date(2021,11,0).getDate()
dayjs获取: dayjs('2021-11-21').daysInMonth()
- 获取某月份最后1天
dayjs(dayjs().month(0)).endOf('month')
- 获取月起止时间
dayjs().set('month', 1).date(1)
dayjs().set('month', 1).date(31)
建议使用
dayjs(date).startOf('month')
dayjs(date).endOf('month')
测试:
dayjs('2021/1/12').startOf('month')
dayjs('2021/1/12').endOf('month')
星期:(星期日0,星期六6
- 当天星期几:dayjs().day()
- 基于当前时间
-
本周: dayjs().day(1), dayjs().day(7) 上一周: dayjs().day(-6),dayjs().day(0) 下一周: dayjs().day(8), dayjs().day(14)
-
基于相对时间
-
周一 -- 周日 上一周: start: dayjs(time).day(1), end: dayjs(time).day(7) 下一周: start: dayjs(time).day(-6), end: dayjs(time).day(0) 测试:2021/10/28 上一周: 2021/10/18 - 2021/10/24 下一周: 2021/11/1 - 2021/1/7 or 上周日 -- 这周六 上一周: start: dayjs(start_time).subtract(1, 'week').startOf('week'), end: dayjs(start_time).subtract(1, 'week').endOf('week') 下一周: start: dayjs(start_time).add(1, 'week').startOf('week'), end: dayjs(start_time).add(1, 'week').endOf('week') 测试:2021/10/28 上一周: 2021/10/17 - 2021/10/23 下一周: 2021/10/31 - 2021/1/6
日期
差值
年:dayjs(time).diff(dayjs(start), 'years')
dayjs('2021-06-08').diff(dayjs('2001-06-01'), 'years') // 20