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 要点归纳(一) jQuery选择器
Mar 21 Javascript
Javascript将string类型转换int类型
Dec 09 Javascript
jquery简单的拖动效果实现原理及示例
Jul 26 Javascript
jquery五角星评分插件示例分享
Feb 21 Javascript
一个极为简单的requirejs实现方法
Oct 20 Javascript
微信小程序 解决swiper不显示图片的方法
Jan 04 Javascript
JavaScript实现淘宝京东6位数字支付密码效果
Aug 18 Javascript
Bootbox将后台JSON数据填充Form表单的实例代码
Sep 10 Javascript
微信小程序中为什么使用var that=this
Aug 27 Javascript
Vue 实现简易多行滚动"弹幕"效果
Jan 02 Javascript
js实现select下拉框选择
Jan 11 Javascript
Typescript3.9 常用新特性一览(推荐)
May 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
thinkphp3.2.2实现生成多张缩略图的方法
2014/12/19 PHP
php的对象传值与引用传值代码实例讲解
2021/02/26 PHP
$()JS小技巧
2007/07/21 Javascript
浅析javascript闭包 实例分析
2010/12/25 Javascript
js的2种继承方式详解
2014/03/04 Javascript
使用JS画图之点、线、面
2015/01/12 Javascript
jquery实现左右滑动菜单效果代码
2015/08/27 Javascript
javascript之Boolean类型对象
2016/06/07 Javascript
Bootstrap Table使用整理(三)
2017/06/09 Javascript
原生javascript AJAX 三级联动的实现代码
2018/05/04 Javascript
Vue+Webpack完美整合富文本编辑器TinyMce的方法
2018/11/30 Javascript
Vue CLI3中使用compass normalize的方法
2019/05/30 Javascript
javascript canvas API内容整理
2020/02/16 Javascript
vue使用swiper实现左右滑动切换图片
2020/10/16 Javascript
vue实现登录功能
2020/12/31 Vue.js
[00:10]DOTA2全国高校联赛 以DOTA2会友
2018/05/30 DOTA
[01:07:11]Secret vs Newbee 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
python中的五种异常处理机制介绍
2014/09/02 Python
Python的类实例属性访问规则探讨
2015/01/30 Python
Python SQLite3数据库日期与时间常见函数用法分析
2017/08/14 Python
Python3.4编程实现简单抓取爬虫功能示例
2017/09/14 Python
Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能
2018/01/11 Python
Django视图和URL配置详解
2018/01/31 Python
python数据挖掘需要学的内容
2019/06/23 Python
Python实现微信机器人的方法
2019/09/06 Python
Python中内建模块collections如何使用
2020/05/27 Python
Selenium关闭INFO:CONSOLE提示的解决
2020/12/07 Python
selenium+python实现基本自动化测试的示例代码
2021/01/27 Python
使用canvas对多图片拼合并导出图片的方法
2018/08/28 HTML / CSS
英国太阳镜品牌:Taylor Morris Eyewear
2018/04/18 全球购物
日本必酷网络直营店:Biccamera
2019/03/23 全球购物
德国便宜的宠物店:Brekz.de
2020/10/23 全球购物
SOA的常见陷阱或者误解是什么
2014/10/05 面试题
保护环境建议书300字
2014/05/13 职场文书
导游词之南京中山陵
2019/11/27 职场文书
React更新渲染原理深入分析
2022/12/24 Javascript