首页 > 代码库 > Js中Date格式化为字符串
Js中Date格式化为字符串
惭愧,混迹博客园2年了,还没写过什么。最近不太忙,就写一下Js中Date对象的字符串转换吧。
直接贴代码,欢迎各位拍砖,吐槽!
/*格式化时间
*formatStr 格式,如:YY-MM-DD hh:mm:ss、Y-M-D h:m:s
*只有一个M时,月份小于十时前面不追加零,D、h、m、s雷同
*/
Date.prototype.toStringFormat = function (formatStr) {
if (formatStr == null || formatStr == ‘‘) return ‘‘;
var date = this;
var formatOper = {
‘YY‘: function () {
return date.getFullYear();
}, ‘Y‘: function () {
return formatOperArr[‘YY‘]();
}, ‘MM‘: function () {
return date.getMonth() + 1 > 9 ? date.getMonth() + 1 : ‘0‘ + (date.getMonth() + 1);
}, ‘M‘: function () {
return date.getMonth();
}, ‘DD‘: function () {
return date.getDate() > 9 ? date.getDate() : ‘0‘ + date.getDate();
}, ‘D‘: function () {
return date.getDate();
}, ‘hh‘: function () {
return date.getHours() > 9 ? date.getHours() : ‘0‘ + date.getHours();
}, ‘h‘: function () {
return date.getHours();
}, ‘mm‘: function () {
return date.getMinutes() > 9 ? date.getMinutes() : ‘0‘ + date.getMinutes();
}, ‘m‘: function () {
return date.getMinutes();
}, ‘ss‘: function () {
return date.getSeconds() > 9 ? date.getSeconds() : ‘0‘ + date.getSeconds();
}, ‘s‘: function () {
return date.getSeconds();
}
};
var formatStrArr = formatStr.split(/[^YMDhms]/g);
var splitArr = formatStr.split(/[YMDhms]/g).filter(function (a) { return a != ‘‘; });
var returnStr = ‘‘;
formatStrArr.forEach(function (value, index) {
returnStr += formatOper[value]() + (splitArr[index] == undefined ? ‘‘ : splitArr[index]);
});
return returnStr;
};