举个例子,我现在要获取距离2021年1月1日还有多久。

那么首先我们得获取它的时间戳,也就是这样↓

let date1=new Date(2021,0,1).getTime();

接着,再来获取现在的时间戳

let date2=new Date().getTime();

再获取他们的差

let remainingTime=date1-date2;

之后就根据RemainingTime的值来计算剩余的天、时、分、秒

废话少说,直接上代码

function getRemainingTime() {
	let date1 = new Date(2021, 0, 1).getTime();
	let date2 = new Date().getTime();
	let RemainingTime = date1 - date2;
	let remainingDay = parseInt(RemainingTime / 86400000), //获取剩余的天数

	remainingHours = parseInt((RemainingTime - remainingDay * 86400000) / 3600000), //剩余的小时

	remainingMinutes = parseInt((RemainingTime - remainingDay * 86400000 - remainingHours * 3600000) / 60000), //剩余的分钟

	remainingSeconds = parseInt((RemainingTime - remainingDay * 86400000 - remainingHours * 3600000 -remainingMinutes * 60000) / 1000); //剩余的秒

	//把计算的结果return出去			
	return {
		remainingDay,
		remainingHours,
		remainingMinutes,
		remainingSeconds
	}
}

再用setInterval()每1000毫秒执行一次getRemainingTime()就可以实时刷新倒计时了

setInterval(function() {
	getRemainingTime()
}, 1000)
点这里看效果

               

作者