封装时间处理函数,让你更快捷的处理时间业务

11 篇文章 4 订阅

包括获取当前日期、获取指定日期、计算日期差、计算两个日期的月份差、获取当前月有几天

1、获取当前日期

接收参数 format
@return 指定格式日期

currentDate(format = 'yyyy-mm-dd') {
	const date = new Date()
	const year = date.getFullYear()
	const month = numberComplement(date.getMonth() + 1)
	const day = numberComplement(date.getDate())
	if (format === 'yyyy-mm-dd') {
		return `${year}-${month}-${day}`
	}
	if (format === 'yyyy/mm/dd') {
		return `${year}/${month}/${day}`
	}
	return `${year}${month}${day}`
}
2、获取指定日期

接收参数targetDate、day
targetDate:目标开始日期
day:目标几天后的日期
比如 targetDate=2023-03-07,day=7
@return 2023-03-14

getAppointDate(targetDate, day) {
	let result = new Date(new Date(targetDate).getTime() + 24 * 60 * 60 * 1000 * day);
	return `${result.getFullYear()}-${numberComplement(result.getMonth() + 1)}-${numberComplement(result.getDate())}`;
}
3、计算日期差

计算两个日期间隔几天
接收参数startDate、endDate
@return days(相差天数)

getDaysDifference(startDate, endDate) {
	const sDate = Date.parse(startDate);
	const eDate = Date.parse(endDate);

	const days = (sDate - eDate) / (24 * 60 * 60 * 1000);
	return days;
}
4、计算两个日期的月份差

接收参数startDate、endDate

diffMonths(startDate, endDate) {
	let startYear = startDate.split("-")[0]
	let endYear = endDate.split("-")[0]
	let startM = startDate.split("-")[1]
	let endM = endDate.split("-")[1]
	let startMonth = startYear + startM
	let endMonth = endYear + endM
	
	if (startMonth > endMonth) {
		let diffYear = startYear - endYear
		let diffMonth = startM - endM
		return diffYear * 12 + diffMonth
	} else if (startMonth < endMonth) {
		let diffYear = endYear - startYear
		let diffMonth = endM - startM

		return diffYear * 12 + diffMonth
	} else {
		return 0
	}
}
5、获取当前月有几天

@return days

getDays() {
	const date = new Date()
	return new Date(date.getFullYear(), date.getMonth() + 1, 0).getDate();
}

如果觉得有用随手点个赞吧,谢谢
关注我,不定时分享技术干货~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

z.week

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值