本文主要是介绍js计算两个时间戳的时间差,并转换为:几天几时几分,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
function sj() {//功能:计算两个时间之间相差多少个小时 var date = '2013-08-29 16:55:49:173';date = date.substring(0, 19);date = date.replace(/-/g, '/');var timestamp = new Date(date).getTime();var date2 = '2013-08-30 23:55:49:123';date2 = date2.substring(0, 19);date2 = date2.replace(/-/g, '/');var timestamp2 = new Date(date2).getTime() - timestamp;var xx = timestamp2 / 1000 / 60 / 60 / 24;xx=xx.toFixed(2);xx=sz(xx.toString());alert(xx);}function sz(xx){//功能:将楼上的计算出来的时间差变成: '3天6时58分' 这种样子var str=xx;var strarr=str.split(".");var str2="0."+strarr[1];var t=strarr[0];if(t!=0){t=t+"天";}else{t="";}var str3=1440*str2;var fz="";var xs="";if(str3<60){str3=str3.toFixed(0);fz+=str3;fz+="分";t+=fz;return t;}else if(str3.toFixed(0)==60){xs+="1时";t+=xs;return t;}else if(str3>60){var s="";s+=str3/60;var arrxs=s.split(".");xs+=arrxs[0];xs+="时";var f="0."+arrxs[1];var f2=60*f;f2=f2.toFixed();fz+=f2;fz+="分";var xsfz=xs+fz;return t+=xsfz;}}var diffTimeShow = diffTime('2017-03-02 09:10','2017-03-17 04:10');function diffTime(startDate,endDate) { startDate= new Date(startDate);endDate = new Date(endDate);var diff=endDate.getTime() - startDate.getTime();//时间差的毫秒数 //计算出相差天数 var days=Math.floor(diff/(24*3600*1000)); //计算出小时数 var leave1=diff%(24*3600*1000); //计算天数后剩余的毫秒数 var hours=Math.floor(leave1/(3600*1000)); //计算相差分钟数 var leave2=leave1%(3600*1000); //计算小时数后剩余的毫秒数 var minutes=Math.floor(leave2/(60*1000)); //计算相差秒数 var leave3=leave2%(60*1000); //计算分钟数后剩余的毫秒数 var seconds=Math.round(leave3/1000); var returnStr = seconds + "秒"; if(minutes>0) { returnStr = minutes + "分" + returnStr; } if(hours>0) { returnStr = hours + "小时" + returnStr; } if(days>0) { returnStr = days + "天" + returnStr; } return returnStr; }
这篇关于js计算两个时间戳的时间差,并转换为:几天几时几分的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!