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);

结果:

蓄力AI

微信公众号搜索 “ 脚本之家 ” ,选择关注

程序猿的那些事、送书等活动等着你

相关文章

  • JavaScript中的对象的extensible属性介绍

    JavaScript中的对象的extensible属性介绍

    这篇文章主要介绍了JavaScript中的对象的extensible属性介绍,JavaScript中,对象的extensible属性用于表示是否允许在对象中动态添加新的property,需要的朋友可以参考下
    2014-12-12
  • 谈谈JavaScript自定义回调函数

    谈谈JavaScript自定义回调函数

    使用Jquery的时候发现它里面的很多方法都提供回调函数,接下来通过本篇文章给大家介绍js自定义回调函数,需要的朋友参考下
    2015-10-10
  • 微信小程序实现bindtap等事件传参

    微信小程序实现bindtap等事件传参

    这篇文章主要介绍了微信小程序实现bindtap等事件传参,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • js中实现继承的五种方法

    js中实现继承的五种方法

    这篇文章主要介绍了js中实现继承的五种方法,帮助大家更好的理解和使用JavaScript,感兴趣的朋友可以了解下
    2021-01-01
  • 原生js实现图片轮播特效

    原生js实现图片轮播特效

    这篇文章主要介绍了原生js实现图片轮播特效,适合用于商品展示,实现最简单的广告轮播效果,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • 微信小程序实现身份证取景框拍摄

    微信小程序实现身份证取景框拍摄

    这篇文章主要介绍了微信小程序实现身份证取景框拍摄,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-09-09
  • 基于JavaScript实现弹出框效果

    基于JavaScript实现弹出框效果

    弹出框在网站页面中是必不可少的一部分,今天借助脚本之家平台给大家分享使用js实现简单的弹出框效果,感兴趣的朋友一起学习吧
    2016-02-02
  • JS eval代码快速解密实例解析

    JS eval代码快速解密实例解析

    这篇文章主要介绍了JS eval代码快速解密实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • js replace替换字符串同时替换多个方法

    js replace替换字符串同时替换多个方法

    这篇文章主要介绍了js replace替换字符串同时替换多个方法 的相关资料,需要的朋友可以参考下
    2018-11-11
  • 利用js定义一个导航条菜单

    利用js定义一个导航条菜单

    本文主要介绍了利用js定义一个导航条菜单的方法。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03

最新评论