现在位置首页 / 项目实战 /正文

Javacript对Date日期的格式化及转换

作者: IT小兵 | 2014年3月8日| 热度:℃ | 评论: |参与:

javacript自带的Date日期格式非常不友好,我们从后台获取的时间,很多时候需要进行转换。

这里分享2个格式化函数。

1、方式1:原型修改:

// javascript 日期格式化  
Date.prototype.format = function(format) //author: meizz   
{   
  var o = {   
    "M+" : this.getMonth()+1, //month   
    "d+" : this.getDate(),    //day   
    "h+" : this.getHours(),   //hour   
    "m+" : this.getMinutes(), //minute   
    "s+" : this.getSeconds(), //second   
    "q+" : Math.floor((this.getMonth()+3)/3),  //quarter   
    "S" : this.getMilliseconds() //millisecond   
  }   
  if(/(y+)/.test(format)) format=format.replace(RegExp.$1,   
    (this.getFullYear()+"").substr(4 - RegExp.$1.length));   
  for(var k in o)if(new RegExp("("+ k +")").test(format))   
    format = format.replace(RegExp.$1,   
      RegExp.$1.length==1 ? o[k] :   
        ("00"+ o[k]).substr((""+ o[k]).length));   
  return format;   
}

2、函数方式:

//取得日期时间加几天字符串,返回YYYY-MM-DD HH:mm  
 function getDateTime(addDay)  
 {  
     var date = new Date();  
       
     var thisYear = date.getFullYear();  
     var thisMonth = date.getMonth() + 1;  
     //如果月份长度是一位则前面补0  
     if(thisMonth<10) thisMonth = "0" + thisMonth;  
       
     var thisDay = date.getDate();  
     //当前天数后几天  
     if(addDay>1) thisDay += addDay;  
     //如果天的长度是一位则前面补0  
     if(thisDay<10) thisDay = "0" + thisDay;  
   
     var thisHour = date.getHours();  
     //如果小时长度是一位则前面补0  
     if(thisHour<10) thisHour = "0" + thisHour;  
       
     var thisMinute = date.getMinutes();  
     //如果分钟长度是一位则前面补0  
     if(thisMinute<10) thisMinute = "0" + thisMinute;  
       
     //var thisSecond = date.getSeconds();  
     //如果分钟长度是一位则前面补0  
     //if(thisSecond<10) thisSecond = "0" + thisSecond;  
       
     return thisYear + "-" + thisMonth + "-" + thisDay + " " + thisHour + ":" + thisMinute;  
     //return thisYear + "-" + thisMonth + "-" + thisDay + " " + thisHour + ":" + thisMinute + ":" + thisSecond;  
 }  
   
 //根据日期字符串,和加几天字符串,返回YYYY-MM-DD HH:mm  
 function getDateForStr(strDate,addDay)  
 {  
     var date = new Date(Date.parse(strDate.replace(/-/g,"/")));  
       
     var thisYear = date.getFullYear();  
     var thisMonth = date.getMonth() + 1;  
     //如果月份长度是一位则前面补0  
     if(thisMonth<10) thisMonth = "0" + thisMonth;  
       
     var thisDay = date.getDate();  
     //当前天数后几天  
     if(addDay>1) thisDay += addDay;  
     //如果天的长度是一位则前面补0  
     if(thisDay<10) thisDay = "0" + thisDay;  
   
     var thisHour = date.getHours();  
     //如果小时长度是一位则前面补0  
     if(thisHour<10) thisHour = "0" + thisHour;  
       
     var thisMinute = date.getMinutes();  
     //如果分钟长度是一位则前面补0  
     if(thisMinute<10) thisMinute = "0" + thisMinute;  
       
     //var thisSecond = date.getSeconds();  
     //如果分钟长度是一位则前面补0  
     //if(thisSecond<10) thisSecond = "0" + thisSecond;  
       
     return thisYear + "-" + thisMonth + "-" + thisDay + " " + thisHour + ":" + thisMinute;  
     //return thisYear + "-" + thisMonth + "-" + thisDay + " " + thisHour + ":" + thisMinute + ":" + thisSecond;  
 }

3、获取带有时间和只有日期的函数:

 function GetJsTime(time) {
    var data = new Date(time);
    var year = data.getFullYear();  //获取年
    var month = data.getMonth() + 1;    //获取月
    var day = data.getDate(); //获取日
    var hours = data.getHours();
    var minutes = data.getMinutes();
    time = year + "-" + month + "-" + day + "" + " " + hours + ":" + minutes;
    return time;
}
 function GetJsDate(time) {
     var data = new Date(time);
     var year = data.getFullYear();  //获取年
     var month = data.getMonth() + 1;    //获取月
     var day = data.getDate(); //获取日
     var hours = data.getHours();
     var minutes = data.getMinutes();
     time = year + "-" + month + "-" + day ;
     return time;
 }

转发注明:IT分享

点击阅读本文所属分类的更多文章: 项目实战 。和高手一起交流:346717337
友荐云推荐

未注明转发、原文均为本站原创。分享本文请注明 原文链接

给您更多信息和帮助

在这里您可以找到更多:

技术交流群:346717337 Jquery插件交流

投稿:suchso@vip.qq.com

承接:企业网站门户/微网站/微商城/CMS系统/微信公众号运营/业务咨询

抢天猫双11红包
推荐使用阿里云服务器
echarts教程系列
本月最热文章

微信扫一扫,徜徉悠嘻网,您的休闲乐园

微信公众号:快乐每一天

随机文章
标签

技术交流群:346717337

投稿:suchso@vip.qq.com

专业专注:企业网站门户/微网站/微商城/CMS系统/微信公众号运营/付费问题咨询