Js日期格式转换

说明:作为一个Java后端程序员,有时候也需要自己去写些前端代码,所以将工作中用到的一些小知识做记录分享。

* ①文章说明:

做项目时有时候会需要获得当前日期,有时候需要对数据库返回的时间戳做友好的格式转换显示,故而将一些用到过的Js日期格式化代码记录下来,供以后方便使用。

* ②代码展示:

$(function(){
	//获得当前时间 格式为: yyyy-MM-dd HH:mm:ss
	var nowTime = getNowFormatDate(); 
	alert("当前时间: "+nowTime);
	
	//采用字符串截取方法,获取当天: yyyy-MM-dd
	var toDay = nowTime.substring(0,10);
	alert("当天日期: "+toDay);
	
	//获取当前标准时间
	var date = new Date();
	alert("当前标准时间: "+date);
	 
	//格式化模板
	var tempFormat ='yyyy-MM-dd HH:mm:ss';
	//将标准时间模板化显示
	var formatTime = standardConvert(date,tempFormat);
	alert("标准时间模板化显示: "+formatTime);
	 
	//获取当前时间戳
	var timeStamp = new Date().getTime();
	alert("当前时间戳:"+timeStamp);
	 
	//获得时间戳上的日期 yyyy-MM-dd
	var transTime = new Date(timeStamp);
	var timeStampDate = transTime.toLocaleDateString();
	alert("获得时间戳上的日期: "+timeStampDate);
	 
	//获得时间戳上的时间 yyyy/MM/dd HH:mm:ss
	var transTime = new Date(timeStamp);
	var timeStamps = transTime.toLocaleDateString()+' '+transTime.toTimeString().substring(0,8);
	alert("获得时间戳上的时间: "+timeStamps);
	 
	//格式化时间戳获得 yyyy/MM/dd HH:mm:ss
	var todayTime = timestampToTime(timeStamp);
	alert("格式化时间戳: "+todayTime)
	 
})

//获得当前时间 格式为:yyyy-MM-dd HH:mm:ss
function getNowFormatDate() {
    var date = new Date();
    var seperator1 = "-";
    var seperator2 = ":";
    var month = date.getMonth() + 1;
    var strDate = date.getDate();
    var Hours = date.getHours();
    var Minu = date.getMinutes();
    var Second = date.getSeconds();
    if (month >= 1 && month <= 9) {
        month = "0" + month;
    }
    if (strDate >= 0 && strDate <= 9) {
        strDate = "0" + strDate;
    }
    if (Hours >= 1 && Hours <= 9) {
        Hours = "0" + Hours;
    }
    if (Minu >= 1 && Minu <= 9) {
        Minu = "0" + Minu;
    }
    if (Second >= 1 && Second <= 9) {
        Second = "0" + Second;
    }
    var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
            + " " + Hours + seperator2 + Minu
            + seperator2 + Second;
    return currentdate;
}

//格式化时间戳
function timestampToTime(timestamp) {
    var date = new Date(timestamp);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
    var Y = date.getFullYear() + '-';
    var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
    var D = date.getDate() < 10 ? '0'+date.getDate() : date.getDate() + ' ';
    var h = date.getHours() + ':';
    var m = date.getMinutes() + ':';
    var s = date.getSeconds();
    return Y+M+D+h+m+s;
}

//将标准时间模板化显示
function standardConvert(time, format){
	var t = new Date(time);
	var tf = function(i){return (i < 10 ? '0' : '') + i};
	return format.replace(/yyyy|MM|dd|HH|mm|ss/g, function(a){
	switch(a){
		case 'yyyy':
		return tf(t.getFullYear());
		break;
		case 'MM':
		return tf(t.getMonth() + 1);
		break;
		case 'mm':
		return tf(t.getMinutes());
		break;
		case 'dd':
		return tf(t.getDate());
		break;
		case 'HH':
		return tf(t.getHours());
		break;
		case 'ss':
		return tf(t.getSeconds());
		break;
		}
	})
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值