时间戳、时间对象统统转化为想要的时间格式,异常强大
/**
* @author chenpengpeng
* @description 通用timeFormat(day, format),其中time表示时间对象或者时间戳,format表示时间具体的格式
* 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
* 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
* 例子:
* (Format(time, "yyyy-MM-dd hh:mm:ss.S") ==> 2016-07-02 08:09:04.423
* (Format(time, "yyyy-M-d h:m:s.S") ==> 2016-7-2 8:9:4.18
* @date 2016-11-02
*/
function timeFormat(time, format){
var dateO;
if(typeof time == 'number' && time.toString().length == 13){
dateO = new Date(time);
}else if(time instanceof Date){
dateO = time;
}else{
return;
}
var date = {
"M+": dateO.getMonth() + 1,
"d+": dateO.getDate(),
"h+": dateO.getHours(),
"m+": dateO.getMinutes(),
"s+": dateO.getSeconds(),
"q+": Math.floor((dateO.getMonth() + 3) / 3),
"S+": dateO.getMilliseconds()
};
var month = date["M+"] < 10 ? '0'+ date["M+"] : date["M+"];
var day = date["d+"] < 10 ? '0'+ date["d+"] : date["d+"];
if(format === 'yyyyMMdd-China'){
return ''+ dateO.getFullYear()+ '年'+ month+ '月'+ day +'日';
}
if(format === 'MMdd-China'){
return ''+ month+ '月'+ day +'日';
}
if (/(y+)/i.test(format)) {
format = format.replace(RegExp.$1, (dateO.getFullYear() + '').substr(4 - RegExp.$1.length));
}
for (var k in date) {
if (new RegExp("(" + k + ")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length == 1
? date[k] : ("00" + date[k]).substr(("" + date[k]).length));
}
}
return format;
}

浙公网安备 33010602011771号