搜索
您的当前位置:首页jquery时间戳与日期转换

jquery时间戳与日期转换

来源:爱问旅游网
jquery时间戳与⽇期转换

(function($) { $.extend({ myTime: { /**

* 当前时间戳

* @return unix时间戳(秒) */

CurTime: function(){

return Date.parse(new Date())/1000; },

/**

* ⽇期 转换为 Unix时间戳

* @param 2014-01-01 20:20:20 ⽇期格式 * @return 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 unixTime 待时间戳(秒)

* @param isFull 返回完整时间(Y-m-d 或者 Y-m-d H:i:s) * @param 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);

⽤法

console.log($.myTime.DateToUnix('2014-5-15 20:20:20'));console.log($.myTime.UnixToDate(1325347200));

1. 将时间戳转换成⽇期格式:

function timestampToTime(timestamp) {

var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 var Y = date.getFullYear() + '-';

var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-'; var D = date.getDate() + ' '; var h = date.getHours() + ':'; var m = date.getMinutes() + ':'; var s = date.getSeconds(); return Y+M+D+h+m+s; }

timestampToTime(1403058804);

console.log(timestampToTime(1403058804));//2014-06-18 10:33:24

注意:如果是Unix时间戳记得乘以1000。⽐如:PHP函数time()获得的时间戳就要乘以1000。

2. 将⽇期格式转换成时间戳:

var date = new Date('2014-04-23 18:55:49:123'); // 有三种⽅式获取

var time1 = date.getTime(); var time2 = date.valueOf(); var time3 = Date.parse(date);

console.log(time1);//1398250549123 console.log(time2);//1398250549123 console.log(time3);//1398250549000

  以上三种获取⽅式的区别:  第⼀、第⼆种:会精确到毫秒

  第三种:只能精确到秒,毫秒⽤000替代  以上三个输出结果可观察其区别

  注意:获取到的时间戳除以1000就可获得Unix时间戳,就可传值给后台得到。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top