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;
        }
        }

猜你喜欢

转载自blog.csdn.net/Stubborn_bull/article/details/83185663