JavaScript实现字符串与日期的互相转换及日期的格式化
字符串转日期、日期转字符串
//2014-02-25 /** *字符串转时间(yyyy-MM-ddHH:mm:ss) *result(分钟) */ stringToDate:function(fDate){ varfullDate=fDate.split("-"); returnnewDate(fullDate[0],fullDate[1]-1,fullDate[2],0,0,0); } /** *格式化日期 *@paramdate日期 *@paramformat格式化样式,例如yyyy-MM-ddHH:mm:ssE *@return格式化后的金额 */ formatDate:function(date,format){ varv=""; if(typeofdate=="string"||typeofdate!="object"){ return; } varyear=date.getFullYear(); varmonth=date.getMonth()+1; varday=date.getDate(); varhour=date.getHours(); varminute=date.getMinutes(); varsecond=date.getSeconds(); varweekDay=date.getDay(); varms=date.getMilliseconds(); varweekDayString=""; if(weekDay==1){ weekDayString="星期一"; }elseif(weekDay==2){ weekDayString="星期二"; }elseif(weekDay==3){ weekDayString="星期三"; }elseif(weekDay==4){ weekDayString="星期四"; }elseif(weekDay==5){ weekDayString="星期五"; }elseif(weekDay==6){ weekDayString="星期六"; }elseif(weekDay==7){ weekDayString="星期日"; } v=format; //Year v=v.replace(/yyyy/g,year); v=v.replace(/YYYY/g,year); v=v.replace(/yy/g,(year+"").substring(2,4)); v=v.replace(/YY/g,(year+"").substring(2,4)); //Month varmonthStr=("0"+month); v=v.replace(/MM/g,monthStr.substring(monthStr.length-2)); //Day vardayStr=("0"+day); v=v.replace(/dd/g,dayStr.substring(dayStr.length-2)); //hour varhourStr=("0"+hour); v=v.replace(/HH/g,hourStr.substring(hourStr.length-2)); v=v.replace(/hh/g,hourStr.substring(hourStr.length-2)); //minute varminuteStr=("0"+minute); v=v.replace(/mm/g,minuteStr.substring(minuteStr.length-2)); //Millisecond v=v.replace(/sss/g,ms); v=v.replace(/SSS/g,ms); //second varsecondStr=("0"+second); v=v.replace(/ss/g,secondStr.substring(secondStr.length-2)); v=v.replace(/SS/g,secondStr.substring(secondStr.length-2)); //weekDay v=v.replace(/E/g,weekDayString); returnv; } //dateValue=2014-02-28 varcDate=_STAGE.stringToDate(dateValue); cDate.setDate(cDate.getDate()+1); currentDate=jAnXin.util.formatDate(cDate,"yyyy-MM-dd"); console.log(currentDate);//2014-03-01
正则替换日期并格式化日期
转数字型:
arttDate="2013年12月20日14:20:20"; ttDate=ttDate.replace(/[^0-9]/mg,'').match(/.{8}/); alert(ttDate);
结果:
20131220
转日期型:
varttDate="2013年12月20日14:20:20"; ttDate=ttDate.match(/\d{4}.\d{1,2}.\d{1,2}/mg).toString(); ttDate=ttDate.replace(/[^0-9]/mg,'-'); alert(ttDate);
结果:
2013-12-20
超级正则替换:
varttDate="2013年12月20日14:20:20"; ttDate=ttDate.replace(/(\d{4}).(\d{1,2}).(\d{1,2}).+/mg,'$1-$2-$3'); alert(ttDate);
结果:
2013-12-20