前端开发中常用到的时间处理

这篇博客展示了JavaScript中用于获取当前时间、计算日期差以及比较日期的实用函数。通过getNowTime()函数可以获取精确到毫秒的当前时间戳,GetDateStr(AddDayCount)函数可以获取指定天数前后的日期,而compare(date1, date2)函数则能比较两个日期的先后顺序。这些函数对于日常的前端开发非常有用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Document</title>
</head>
<body>
	
</body>
<script>
	//1.得到当前的时间(年月日时分秒)
	function getNowTime (){
		const date_ = new Date()
		let year = date_.getFullYear()
		let month = date_.getMonth() + 1
		let day = date_.getDate()
		if (month < 10) month = '0' + month
		if (day < 10) day = '0' + day
		let hours = date_.getHours()
		let mins = date_.getMinutes()
		let secs = date_.getSeconds()
		let msecs = date_.getMilliseconds()
		if (hours < 10) hours = '0' + hours
		if (mins < 10) mins = '0' + mins
		if (secs < 10) secs = '0' + secs
		if (msecs < 10) secs = '0' + msecs
		return year+'-'+month+'-'+day + ' ' + hours + ':' + mins + ':' + secs
	}  
	console.log(this.getNowTime())//2022-08-02 11:12:07
	// 2.得到今天前后的日期(年月日)
	function GetDateStr(AddDayCount) {   
    var dd = new Date();
	dd.setDate(dd.getDate()+AddDayCount);// 获取 AddDayCount 天后的日期
	var y = dd.getFullYear();   
	var m = (dd.getMonth()+1)<10?"0"+(dd.getMonth()+1):(dd.getMonth()+1);// 获取当前月份的日期,不足 10 补 0  
	var d = dd.getDate()<10?"0"+dd.getDate():dd.getDate();// 获取当前几号,不足 10 补 0  
	return y+"-"+m+"-"+d;   
	}
	console.log(this.GetDateStr(0))//2022-08-02
	console.log(this.GetDateStr(1))//2022-08-03
	console.log(this.GetDateStr(-1))//2022-08-01
	console.log(this.GetDateStr(-2))//2022-07-31
    // 3.date1,date2格式:0000-00-00 00:00:00
	// 比较的时间:date1,date2
	function compare(date1,date2){
    	   var oDate1 = new Date(date1.replace(/-/g, '/'))
		   var oDate2 = new Date(date2.replace(/-/g, '/'))
		   if(new Date(date1)&& new Date(date2)){
			   	if(oDate1.getTime() > oDate2.getTime()){
    			    // alert('date1>date2');
					return 1
    			} else if (oDate1.getTime() < oDate2.getTime()){
    			    // alert('date1<date2');
					return 2
    			}else{
					// alert('date1=date2');
					return 0
		   }
		}
  	}
	console.log(this.compare('2022-08-02 09:00:00','2022-08-02 10:00:00'))//2
	console.log(this.compare('2022-08-02 11:00:00','2022-08-02 10:00:00'))//1
	console.log(this.compare('2022-08-02 10:00:00','2022-08-02 10:00:00'))//0

</script>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值