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


Posted in Javascript onMarch 07, 2016

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

// 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
Javascript 相关文章推荐
js弹出窗口之弹出层的小例子
Jun 17 Javascript
jQuery中获取Radio元素值的方法
Jul 02 Javascript
关于Javascript加载执行优化的研究报告
Dec 16 Javascript
JS+CSS实现大气的黑色首页导航菜单效果代码
Sep 10 Javascript
Bootstrap项目实战之首页内容介绍(全)
Apr 25 Javascript
Bootstrap Chart组件使用教程
Apr 28 Javascript
原生javascript实现分享到朋友圈功能 支持ios和android
May 11 Javascript
js判断出两个字符串最大子串的函数实现方法
Nov 01 Javascript
实例详解display:none与visible:hidden的区别
Mar 30 Javascript
Vuejs 2.0 子组件访问/调用父组件的方法(示例代码)
Feb 08 Javascript
js实现移动端吸顶效果
Jan 08 Javascript
微信小程序实现聊天室功能
Jun 14 Javascript
JavaScript中将数组进行合并的基本方法讲解
Mar 07 #Javascript
Bootstrap每天必学之日期控制
Mar 07 #Javascript
JavaScript过滤字符串中的中文与空格方法汇总
Mar 07 #Javascript
jquery+json实现分页效果
Mar 07 #Javascript
利用JQuery写一个简单的异步分页插件
Mar 07 #Javascript
基于jquery编写分页插件
Mar 07 #Javascript
JavaScript快速切换繁体中文和简体中文的方法及网站支持简繁体切换的绝招
Mar 07 #Javascript
You might like
Terran魔法科技
2020/03/14 星际争霸
基于mysql的论坛(7)
2006/10/09 PHP
PHP下常用正则表达式整理
2010/10/26 PHP
解析php中curl_multi的应用
2013/07/17 PHP
Laravel框架实现定时发布任务的方法
2018/08/16 PHP
JavaScript移除数组元素减少长度的方法
2013/09/05 Javascript
Javascript 浮点运算精度问题分析与解决
2014/03/26 Javascript
JS实现超精简的链接列表在固定区域内滚动效果代码
2015/11/04 Javascript
xtemplate node.js 的使用方法实例解析
2016/08/22 Javascript
Bootstrap基本插件学习笔记之轮播幻灯片(23)
2016/12/08 Javascript
JS定时检测任务任务完成后执行下一步的解决办法
2016/12/22 Javascript
Vue+ElementUI项目使用webpack输出MPA的方法
2019/08/27 Javascript
解决layer弹出层msg的文字不显示的问题
2019/09/11 Javascript
浅谈JavaScript中的“!!”作用
2020/08/03 Javascript
nuxt 路由、过渡特效、中间件的实现代码
2020/11/06 Javascript
[05:26]2014DOTA2西雅图国际邀请赛 iG战队巡礼
2014/07/07 DOTA
[01:07:19]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第一场
2018/04/06 DOTA
Python3实现生成随机密码的方法
2014/08/23 Python
Python验证码识别的方法
2015/07/10 Python
Linux 下 Python 实现按任意键退出的实现方法
2016/09/25 Python
Python cookbook(字符串与文本)针对任意多的分隔符拆分字符串操作示例
2018/04/19 Python
Python 实现两个列表里元素对应相乘的方法
2018/11/14 Python
python Django编写接口并用Jmeter测试的方法
2019/07/31 Python
Python matplotlib以日期为x轴作图代码实例
2019/11/22 Python
Python 文件数据读写的具体实现
2020/01/24 Python
如何基于Python和Flask编写Prometheus监控
2020/11/25 Python
简单介绍HTML5中audio标签的使用
2015/09/24 HTML / CSS
简述Html5 IphoneX 适配方法
2018/02/08 HTML / CSS
StubHub美国:购买或出售您的门票
2019/07/09 全球购物
大专生工程监理求职信
2013/10/04 职场文书
运动会广播稿300字
2014/01/10 职场文书
2014年医院科室工作总结
2014/12/20 职场文书
张思德观后感
2015/06/09 职场文书
MySQL基于索引的压力测试的实现
2021/11/07 MySQL
索尼ICF-36收音机评测
2022/04/30 无线电
windows11选中自动复制怎么开启? Win11自动复制所选内容的方法
2022/07/23 数码科技