jQuery中时间戳和日期的相互转换

时间:2022-07-31 02:31:02

在项目中经常会使用时间戳和日期的相互转换,可以参考如下代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
( function ($) {
     $.extend({
         myTime: {
             /**
              * 当前时间戳
              * @return <int>        unix时间戳(秒)  
              */
             CurTime: function (){
                 return Date.parse( new Date())/1000;
             },
             /**              
              * 日期 转换为 Unix时间戳
              * @param <string> 2014-01-01 20:20:20  日期格式              
              * @return <int>        unix时间戳(秒)              
              */
             DateToUnix: function (string) {
                 var f = string.split( ' ' , 2);
                 var d = (f[0] ? f[0] : '' ).split( '-' , 3);
                 var t = (f[1] ? f[1] : '' ).split( ':' , 3);
                 return ( new Date(
                         parseInt(d[0], 10) || null ,
                         (parseInt(d[1], 10) || 1) - 1,
                         parseInt(d[2], 10) || null ,
                         parseInt(t[0], 10) || null ,
                         parseInt(t[1], 10) || null ,
                         parseInt(t[2], 10) || null
                         )).getTime() / 1000;
             },
             /**              
              * 时间戳转换日期              
              * @param <int> unixTime    待时间戳(秒)              
              * @param <bool> isFull    返回完整时间(Y-m-d 或者 Y-m-d H:i:s)              
              * @param <int>  timeZone   时区              
              */
             UnixToDate: function (unixTime, isFull, timeZone) {
                 if ( typeof (timeZone) == 'number' )
                 {
                     unixTime = parseInt(unixTime) + parseInt(timeZone) * 60 * 60;
                 }
                 var time = new Date(unixTime * 1000);
                 var ymdhis = "" ;
                 ymdhis += time.getUTCFullYear() + "-" ;
                 ymdhis += (time.getUTCMonth()+1) + "-" ;
                 ymdhis += time.getUTCDate();
                 if (isFull === true )
                 {
                     ymdhis += " " + time.getUTCHours() + ":" ;
                     ymdhis += time.getUTCMinutes() + ":" ;
                     ymdhis += time.getUTCSeconds();
                 }
                 return ymdhis;
             }
         }
     });
})(jQuery);

使用方法也很简单

日期转时间戳

 

1
$.myTime.DateToUnix( '2014-5-15 20:20:20' ));

 

时间戳转日期

1
$.myTime.UnixToDate(1325347200)