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 相关文章推荐
JSDoc 介绍使用规范JsDoc的使用介绍
Feb 12 Javascript
js作用域及作用域链概念理解及使用
Apr 15 Javascript
JS.findElementById()使用介绍
Sep 21 Javascript
Js操作树节点自动折叠展开的几种方法
May 05 Javascript
详谈JavaScript内存泄漏
Nov 14 Javascript
javascript获取重复次数最多的字符
Jul 08 Javascript
jQuery 利用ztree实现树形表格的实例代码
Sep 27 jQuery
Three.js基础学习教程
Nov 16 Javascript
js如何找出字符串中的最长回文串
Jun 04 Javascript
JS实现的简单分页功能示例
Aug 23 Javascript
javascript中join方法实例讲解
Feb 21 Javascript
JS实现页面侧边栏效果探究
Jan 08 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类
2006/07/15 PHP
PHP类中Static方法效率测试代码
2010/10/17 PHP
对于PHP 5.4 你必须要知道的
2013/08/07 PHP
mac下安装nginx和php
2013/11/04 PHP
php采用curl实现伪造IP来源的方法
2014/11/21 PHP
PHP中使用curl伪造IP的简单方法
2015/08/07 PHP
php表单提交实例讲解
2015/11/12 PHP
php利用云片网实现短信验证码功能的示例代码
2017/11/18 PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
2020/02/28 PHP
一个js拖拽的效果类和dom-drag.js浅析
2010/07/17 Javascript
jquery得到iframe src属性值的方法
2014/09/25 Javascript
Javascript代码实现仿实例化类
2015/04/03 Javascript
利用vue写todolist单页应用
2016/12/15 Javascript
微信小程序表单验证功能完整实例
2017/12/01 Javascript
Vue v2.4中新增的$attrs及$listeners属性使用教程
2018/01/08 Javascript
layui的table中显示图片方法
2018/08/17 Javascript
JavaScript类的继承操作实例总结
2018/12/20 Javascript
精读《Vue3.0 Function API》
2020/05/20 Javascript
[03:37]2014DOTA2国际邀请赛 主赛事第一日胜者组TOPPLAY
2014/07/19 DOTA
[00:52]DOTA2齐天大圣预告片
2016/08/13 DOTA
Python判断某个用户对某个文件的权限
2016/10/13 Python
Python中标准库OS的常用方法总结大全
2017/07/19 Python
python线程中同步锁详解
2018/04/27 Python
python批量修改图片后缀的方法(png到jpg)
2018/10/25 Python
Python实现针对json中某个关键字段进行排序操作示例
2018/12/25 Python
基于HTML5 Canvas:字符串,路径,背景,图片的详解
2013/05/09 HTML / CSS
canvas使用注意点总结
2013/07/19 HTML / CSS
详解HTML5中的元素与元素
2015/08/17 HTML / CSS
世界排名第一的万圣节服装店:Spirit Halloween
2018/10/16 全球购物
英国领先的高级美容和在线皮肤诊所:Face the Future
2020/06/17 全球购物
什么是虚拟内存?虚拟内存有什么优势?
2016/02/09 面试题
春季防火方案
2014/05/10 职场文书
群众路线四风自我剖析材料
2014/10/08 职场文书
三八妇女节标语
2014/10/09 职场文书
JS Object构造函数之Object.freeze
2021/04/28 Javascript
MySQL批量更新不同表中的数据
2022/05/11 MySQL