获取两个日期之间的所有天数实现倒计时

这篇博客详细介绍了JavaScript中用于格式化日期的`formatTime`函数,以及`getAllDate`函数用于获取指定日期范围内的所有日期。此外,还讨论了`countDown`函数,该函数用于计算并显示从当前时间到给定结束时间的倒计时,包括天数、小时、分钟和秒。博客内容涉及到时间戳、日期对象和时间间隔的处理。
摘要由CSDN通过智能技术生成
formatTime: function(date) {
	let today = new Date(date);
	let month = String(today.getMonth() + 1);
	month = month.padStart(2, '0');
	let day = String(today.getDate());
	day = day.padStart(2, '0');
	let str = today.getFullYear() + '-' + month + '-' + day;
	return str
}
getAllDate: function(start, end) {
	let dateArr = []
	let startArr = start.split('-')
    let endArr = end.split('-')
	let db = new Date()
	db.setUTCFullYear(startArr[0], startArr[1] - 1, startArr[2])
	let de = new Date()
	de.setUTCFullYear(endArr[0], endArr[1] - 1, endArr[2])
	let unixDb = db.getTime()
	let unixDe = de.getTime()
	let stamp
	const oneDay = 24 * 60 * 60 * 1000;
	for (stamp = unixDb; stamp <= unixDe;) {
		dateArr.push(this.formatTime(new Date(parseInt(stamp))))
		stamp = stamp + oneDay
	}
	return dateArr.length - 1
}
countDown: function() {
	let end = new Date(this.endTime)
	let today = new Date();
	this.day = this.getAllDate(this.formatTime(today), this.formatTime(end))
	let secondValue = end.getSeconds() - today.getSeconds();
	let minuteValue = end.getMinutes() - today.getMinutes();
	let hourValue = end.getHours() - today.getHours();
	if (secondValue < 0) {
		secondValue += 60;
		minuteValue -= 1;
	}
	if (minuteValue < 0) {
		minuteValue += 60;
		hourValue -= 1;
	}
	if (hourValue < 0) {
		hourValue += 24;
		this.day -= 1;
	}
	this.second = String(secondValue).padStart(2, '0')
	this.minute = String(minuteValue).padStart(2, '0')
	this.hour = String(hourValue).padStart(2, '0')
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值