js計算兩個時間戳的時間差,並轉換為:幾天幾時幾分
function sj() { //功能:計算兩個時間之間相差多少個小時 var date = '2013-08-30 16:55:49:173'; date = date.substring(0, 19); date = date.replace(/-/g, '/'); var timestamp = new Date(date).getTime(); var date2 = '2013-09-1 11: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]+"天"; var str3=1440*str2; var fz=""; var xs=""; if(str3<60){ str3=str3.toFixed(0); fz+=str3; fz+="分"; t+=fz; }else if(str3.toFixed(0)==60){ xs+="1時"; t+=xs; }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; t+=xsfz; } return t; }
如有測出有bug的同學,麻煩告知下。