JavaScript实现字符串与日期的互相转换及日期的格式化
来源: 阅读:680 次 日期:2016-07-22 15:53:27
温馨提示: 小编为您整理了“JavaScript实现字符串与日期的互相转换及日期的格式化”,方便广大网友查阅!

这篇文章主要介绍了JavaScript实现字符串与日期的互相转换及日期的格式化的方法,这里格式化使用的是正则表达式来替换日期后进行格式化,需要的朋友可以参考下

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

// 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

更多信息请查看网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map