javascript 日期格式化

var str = '2008-11-11 11:11:09';
alert(str.replace(//s/d+:/d+:/d+$/,''));

1.Date.prototype.format = function(format)  
2.{  
3.   var o = {  
4.     "M+" : this.getMonth()+1, //month  
5.     "d+" : this.getDate(),    //day  
6.     "h+" : this.getHours(),   //hour  
7.     "m+" : this.getMinutes(), //minute  
8.     "s+" : this.getSeconds(), //second  
9.     "q+" : Math.floor((this.getMonth()+3)/3), //quarter  
10.     "S" : this.getMilliseconds() //millisecond  
11.   }  
12.   if(/(y+)/.test(format)) format=format.replace(RegExp.$1,  
13.     (this.getFullYear()+"").substr(4 - RegExp.$1.length));  
14.   for(var k in o)if(new RegExp("("+ k +")").test(format))  
15.     format = format.replace(RegExp.$1,  
16.       RegExp.$1.length==1 ? o[k] :   
17.         ("00"+ o[k]).substr((""+ o[k]).length));  
18.   return format;  
19.}  

showtime = new Date().format("yyyy-MM-dd hh:mm:ss");

 

 


// 对Date的扩展,将 Date 转化为指定格式的String
// 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
// 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
// 例子:
// (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
// (new Date()).Format("yyyy-M-d h:m:s.S")      ==> 2006-7-2 8:9:4.18
Date.prototype.Format = function(fmt)
{ //author: meizz
  var o = {
    "M+" : this.getMonth()+1,                 //月份
    "d+" : this.getDate(),                    //日
    "h+" : this.getHours(),                   //小时
    "m+" : this.getMinutes(),                 //分
    "s+" : this.getSeconds(),                 //秒
    "q+" : Math.floor((this.getMonth()+3)/3), //季度
    "S"  : this.getMilliseconds()             //毫秒
  };
  if(/(y+)/.test(fmt))
    fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
  for(var k in o)
    if(new RegExp("("+ k +")").test(fmt))
  fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
  return fmt;
}


//+---------------------------------------------------  
//| 字符串转成日期类型   
//| 格式 MM/dd/YYYY MM-dd-YYYY YYYY/MM/dd YYYY-MM-dd  
//+---------------------------------------------------  
function StringToDate(DateStr)  
{   
  
    var converted = Date.parse(DateStr);  
    var myDate = new Date(converted);  
    if (isNaN(myDate))  
    {   
        //var delimCahar = DateStr.indexOf('/')!=-1?'/':'-';  
        var arys= DateStr.split('-');  
        myDate = new Date(arys[0],--arys[1],arys[2]);  
    }  
    return myDate;  
}

 

/**//* 
 2  将String类型解析为Date类型. 
 3  parseDate('2006-1-1') return new Date(2006,0,1) 
 4  parseDate(' 2006-1-1 ') return new Date(2006,0,1) 
 5  parseDate('2006-1-1 15:14:16') return new Date(2006,0,1,15,14,16) 
 6  parseDate(' 2006-1-1 15:14:16 ') return new Date(2006,0,1,15,14,16); 
 7  parseDate('2006-1-1 15:14:16.254') return new Date(2006,0,1,15,14,16,254) 
 8  parseDate(' 2006-1-1 15:14:16.254 ') return new Date(2006,0,1,15,14,16,254) 
 9  parseDate('不正确的格式') retrun null 
10*/ 
11function parseDate(str){  
12  if(typeof str == 'string'){  
13    var results = str.match(/^ *(/d{4})-(/d{1,2})-(/d{1,2}) *$/);  
14    if(results && results.length>3)  
15      return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]));   
16    results = str.match(/^ *(/d{4})-(/d{1,2})-(/d{1,2}) +(/d{1,2}):(/d{1,2}):(/d{1,2}) *$/);  
17    if(results && results.length>6)  
18      return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]),parseInt(results[4]),parseInt(results[5]),parseInt(results[6]));   
19    results = str.match(/^ *(/d{4})-(/d{1,2})-(/d{1,2}) +(/d{1,2}):(/d{1,2}):(/d{1,2})/.(/d{1,9}) *$/);  
20    if(results && results.length>7)  
21      return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]),parseInt(results[4]),parseInt(results[5]),parseInt(results[6]),parseInt(results[7]));   
22  }  
23  return null;  
24}  
25 
26/**//* 
27  将Date/String类型,解析为String类型. 
28  传入String类型,则先解析为Date类型 
29  不正确的Date,返回 '' 
30  如果时间部分为0,则忽略,只返回日期部分. 
31*/ 
32function formatDate(v){  
33  if(typeof v == 'string') v = parseDate(v);  
34  if(v instanceof Date){  
35    var y = v.getFullYear();  
36    var m = v.getMonth() + 1;  
37    var d = v.getDate();  
38    var h = v.getHours();  
39    var i = v.getMinutes();  
40    var s = v.getSeconds();  
41    var ms = v.getMilliseconds();     
42    if(ms>0) return y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s + '.' + ms;  
43    if(h>0 || i>0 || s>0) return y + '-' + m + '-' + d + ' ' + h + ':' + i + ':' + s;  
44    return y + '-' + m + '-' + d;  
45  }  
46  return '';  
47}  
48

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值