JavaScript实现字符串与日期的互相转换及日期的格式化
更新时间:2016年03月07日 16:28:46 作者:qiaolevip
这篇文章主要介绍了JavaScript实现字符串与日期的互相转换及日期的格式化的方法,这里格式化使用的是正则表达式来替换日期后进行格式化,需要的朋友可以参考下
脚本之家 / 编程助手:解决程序员“几乎”所有问题!
脚本之家官方知识库 → 点击立即使用
字符串转日期、日期转字符串
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | // 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 |
正则替换日期并格式化日期
转数字型:
1 2 3 | ar ttDate = "2013年12月20日 14:20:20" ; ttDate = ttDate.replace(/[^0-9]/mg, '' ).match(/.{8}/); alert(ttDate); |
结果:
转日期型:
1 2 3 4 | 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); |
结果:
超级正则替换:
1 2 3 4 | 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); |
结果:
微信公众号搜索 “ 脚本之家 ” ,选择关注
程序猿的那些事、送书等活动等着你
最新评论