项目里用到获取指定格式的日期,这里mark写下次直接用
function getNowDate(format,dateVar){
if ( dateVar == null || dateVar == ''){
dateVar = new Date();
}
if ( format == null || format == ''){
format = 'yyyy-MM-dd';
}
var o = {
"M+" : dateVar.getMonth()+1, //month
"d+" : dateVar.getDate(), //day
"h+" : dateVar.getHours(), //hour
"m+" : dateVar.getMinutes(), //minute
"s+" : dateVar.getSeconds(), //second
"q+" : Math.floor((dateVar.getMonth()+3)/3), //quarter
"S" : dateVar.getMilliseconds() //millisecond
}
if(/(y+)/.test(format)) {
format = format.replace(RegExp.$1, (dateVar.getFullYear()+"").substr(4 - RegExp.$1.length));
}
for(var k in o) {
if(new RegExp("("+ k +")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));
}
}
return format;
}
备注:这里需要注意传入的日期format的大小写要与正则表达式中用到的匹配的一致 否则会返回不正确的值 这里时间仓促没有更细的去验证判断