JavaScript实现字符串与日期的互相转换及日期的格式化

时间:2021-05-26

字符串转日期、日期转字符串

// 2014-02-25 /** * 字符串转时间(yyyy-MM-dd HH:mm:ss) * result (分钟) */ stringToDate : function(fDate){ var fullDate = fDate.split("-"); return new Date(fullDate[0], fullDate[1]-1, fullDate[2], 0, 0, 0); } /** * 格式化日期 * @param date 日期 * @param format 格式化样式,例如yyyy-MM-dd HH:mm:ss E * @return 格式化后的金额 */ formatDate : function (date, format) { var v = ""; if (typeof date == "string" || typeof date != "object") { return; } var year = date.getFullYear(); var month = date.getMonth()+1; var day = date.getDate(); var hour = date.getHours(); var minute = date.getMinutes(); var second = date.getSeconds(); var weekDay = date.getDay(); var ms = date.getMilliseconds(); var weekDayString = ""; if (weekDay == 1) { weekDayString = "星期一"; } else if (weekDay == 2) { weekDayString = "星期二"; } else if (weekDay == 3) { weekDayString = "星期三"; } else if (weekDay == 4) { weekDayString = "星期四"; } else if (weekDay == 5) { weekDayString = "星期五"; } else if (weekDay == 6) { weekDayString = "星期六"; } else if (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 var monthStr = ("0"+month); v = v.replace(/MM/g, monthStr.substring(monthStr.length-2)); //Day var dayStr = ("0"+day); v = v.replace(/dd/g, dayStr.substring(dayStr.length-2)); //hour var hourStr = ("0"+hour); v = v.replace(/HH/g, hourStr.substring(hourStr.length-2)); v = v.replace(/hh/g, hourStr.substring(hourStr.length-2)); //minute var minuteStr = ("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 var secondStr = ("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); return v; } // dateValue=2014-02-28 var cDate = _STAGE.stringToDate(dateValue); cDate.setDate(cDate.getDate()+1); currentDate = jAnXin.util.formatDate(cDate, "yyyy-MM-dd"); console.log(currentDate ); // 2014-03-01

正则替换日期并格式化日期

转数字型:

ar ttDate = "2013年12月20日 14:20:20"; ttDate = ttDate.replace(/[^0-9]/mg, '').match(/.{8}/); alert(ttDate);

结果:

20131220

转日期型:

var ttDate = "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

超级正则替换:

var ttDate = "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

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章