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 相关文章推荐
jQuery使用手册之三 CSS操作
Mar 24 Javascript
纯js实现背景图片切换效果代码
Nov 14 Javascript
仿百度联盟对联广告实现代码
Aug 30 Javascript
ES6所改良的javascript“缺陷”问题
Aug 23 Javascript
jQuery实现对象转为url参数的方法
Jan 11 Javascript
jquery平滑滚动到顶部插件使用详解
May 08 jQuery
webpack学习教程之publicPath路径问题详解
Jun 17 Javascript
Vue cli 引入第三方JS和CSS的常用方法分享
Jan 20 Javascript
Bootstrap标签页(Tab)插件切换echarts不显示问题的解决
Jul 13 Javascript
react native基于FlatList下拉刷新上拉加载实现代码示例
Sep 30 Javascript
turn.js异步加载实现翻书效果
Jul 25 Javascript
基于aotu.js实现微信自动添加通讯录中的联系人功能
May 28 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
PHP伪静态页面函数附使用方法
2008/06/20 PHP
php jquery 实现新闻标签分类与无刷新分页
2009/12/18 PHP
php通过array_shift()函数移除数组第一个元素的方法
2015/03/18 PHP
PHP的Yii框架中行为的定义与绑定方法讲解
2016/03/18 PHP
php微信支付接口开发程序
2016/08/02 PHP
PHP使用PhpSpreadsheet操作Excel实例详解
2020/03/26 PHP
Avengerls vs Newbee BO3 第三场2.18
2021/03/10 DOTA
js几个不错的函数 $$()
2006/10/09 Javascript
JavaScript基本编码模式小结
2012/05/23 Javascript
点击弹出层外区域关闭弹出层jquery特效示例
2013/08/25 Javascript
初识Node.js
2015/03/20 Javascript
jQuery中next方法用法实例
2015/04/24 Javascript
javascript去除空格方法小结
2015/05/21 Javascript
在JavaScript中操作时间之setYear()方法的使用
2015/06/12 Javascript
基于jquery实现可定制的web在线富文本编辑器附源码下载
2015/11/17 Javascript
js判断数组key是否存在(不用循环)的简单实例
2016/08/03 Javascript
Bootstrap基本组件学习笔记之面板(14)
2016/12/08 Javascript
BootStrap TreeView使用实例详解
2017/11/01 Javascript
js登录滑动验证的实现(不滑动无法登陆)
2018/01/03 Javascript
vue中echarts3.0自适应的方法
2018/02/26 Javascript
如何从0开始用node写一个自己的命令行程序
2018/12/29 Javascript
详解原生JS回到顶部
2019/03/25 Javascript
关于js陀螺仪的理解分析
2019/04/11 Javascript
python爬虫入门教程之糗百图片爬虫代码分享
2014/09/02 Python
Python中Numpy包的安装与使用方法简明教程
2018/07/03 Python
Django+Django-Celery+Celery的整合实战
2021/01/20 Python
Chicco婴儿用品美国官网:汽车座椅、婴儿推车、高脚椅等
2018/11/05 全球购物
薇姿法国官网:Vichy法国
2021/01/28 全球购物
实习求职信
2013/12/01 职场文书
企业元宵节主持词
2014/03/25 职场文书
初中国旗下的演讲稿
2014/08/28 职场文书
煤矿百日安全活动总结
2015/05/07 职场文书
给朋友的赠语
2015/06/23 职场文书
Pandas数据类型之category的用法
2021/06/28 Python
python中使用 unittest.TestCase单元测试的用例详解
2021/08/30 Python
js判断两个数组相等的5种方法
2022/05/06 Javascript