时间差计算函数
时间差计算函数,可直接返回相差的天,小时,分钟,秒,用于实现倒计时功能。
代码如下:
$.extend({ /** * 获取时间差 * @param {Date} sDate : 起始时间 * @param {Date} eDate : 结束时间 * @param {Function} callback : 返回时间差(天,小时,分钟,秒) */ diffDate:function(sDate,eDate,callback){ var d1 = sDate.getTime(),d2 = eDate.getTime(),_d,_h,_m,_s,_diff; if(d1<d2){ var differ = (d2-d1)/1000; _d = Math.floor(differ/60/60/24); _h = Math.floor(differ/60/60)-(_d*24); _m = Math.floor(differ/60)-(_h*60)-(_d*24*60); _s = Math.floor(differ%60%60); callback(_d,_h,_m,_s); }else{ if($.isFunction(callback)){ callback(-1); } } } });
使用方法:
$.diffDate(new Date(),new Date('2017/5/10 16:33:00'),function(d,h,m,s){}); // date1 < date2 时,返回时间差 // date1 >= date2 时,返回d=-1