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

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

/**

  • 字符串转时间(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);  

}

/**

  • 格式化日期
  • @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,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

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

转数字型:

结果:

转日期型:

结果:

超级正则替换:

ttDate = ttDate.replace(/(\d{4}).(\d{1,2}).(\d{1,2}).+/mg,'$1-$2-$3');
alert(ttDate);

结果:

相关文章

事件冒泡和事件捕获 起因:今天在封装一个bind函数的时候,发现el.addEventListener函数支持第三个参数...
js小数运算会出现精度问题 js number类型 JS 数字类型只有number类型,number类型相当于其他强类型语言...
什么是跨域 跨域 : 广义的跨域包含一下内容 : 1.资源跳转(链接跳转,重定向跳转,表单提交) 2.资源...
@ "TOC" 常见对base64的认知(不完全正确) 首先对base64常见的认知,也是须知的必须有...
搞懂:MVVM模式和Vue中的MVVM模式 MVVM MVVM : 的缩写,说都能直接说出来 :模型, :视图, :视图模...
首先我们需要一个html代码的框架如下: 我们的目的是实现ul中的内容进行横向的一点一点滚动。ul中的内容...