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')
}
获取两个日期之间的所有天数实现倒计时
最新推荐文章于 2022-08-09 18:45:10 发布
这篇博客详细介绍了JavaScript中用于格式化日期的`formatTime`函数,以及`getAllDate`函数用于获取指定日期范围内的所有日期。此外,还讨论了`countDown`函数,该函数用于计算并显示从当前时间到给定结束时间的倒计时,包括天数、小时、分钟和秒。博客内容涉及到时间戳、日期对象和时间间隔的处理。
摘要由CSDN通过智能技术生成