1.日期格式根据自己需要重写
Date.prototype.toLocaleString = function() {
return this.getFullYear() + “年” + (this.getMonth() + 1) + “月” +this.getDate() + "日 " + this.getHours() + “点” + this.getMinutes() +“分” + this.getSeconds() + “秒”;
};
var d = new Date();
console.log(d.toLocaleString());//2018年12月10日 19点8分37秒
2.有关时间的转换
-
第一、拿到一系列时间格式是否会自动转换成ms
var str_ = “2018-12/4 21:45:21”;
var str = “2018-12/4 21:45:21”;
var str_ = “2018-12-4 21:45:21”;
var str = “2018/12/4 21:45:21”;
当格式为:yyyy-mm-dd hh:mm:ss或者yyyy/mm/dd hh:mm:ss的时候,放到new Date()里面是会接受的,其他的非-和/的就不行了
比如说这两种也是可以的:yyyy/mm-dd hh:mm:ss和yyyy-mm/dd hh:mm:ss
因为new Date()这个方法是存在’-‘转换成’/‘或者’/‘转换成’-'的统一规范机制,比如说yyyy/mm~dd hh:mm:ss这种就不行了
var oldTime = (new Date(str)).getTime();
console.log(oldTime); -
第二、拿到ms格式是否会自动转换成标准格式
//ms的定义是参照1970年1月1日到现在所需要的时间
var ms_value = 1412222224009;
var cdate = new Date(ms_value);
console.log(cdate);//输出:Thu Oct 02 2014 11:57:04 GMT+0800 (中国标准时间)
//那么要转换成自己想要的格式的话就需要自定义转化啦
3.更加随意的自定义转化
如果说第一种改变原型的方法使用的很顺手的话,那么下面这个方法可以说是灵活到爆炸。自定义格式转化函数,这个可以看你自己的想法去随意改变格式(相对更适用在个性化的领域,公共的话建议用前面的方法1)
function dateFrom(form,date)
{
var o = {
"M+" : date.getMonth()+1, //月份
"d+" : date.getDate(), //日
"h+" : date.getHours(), //小时
"m+" : date.getMinutes(), //分
"s+" : date.getSeconds(), //秒
"S" : date.getMilliseconds() //毫秒
};
if(/(y+)/.test(form))
form=form.replace(RegExp.$1, (date.getFullYear()+"").substr(4 - RegExp.$1.length));
for(var k in o)
if(new RegExp("("+ k +")").test(form))
form= form.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
return form;
}
var setdate = new Date(1543500000000);
console.log(dateFrom("yyyy/MM-dd hh:mm:ss",setdate));
//2018/11-29 22:00:00
这样的话输出格式就是各位客官说了算啦。
希望这个分享能给大家带来一点点帮助,喜欢的可以点个赞哟!么么哒