zoukankan      html  css  js  c++  java
  • js计算两个时间差

    时间格式

    time:'2018-04-26 15:49:00'需要转换为time:'2018/04/26 15:49:00'

    • 使用time.replace(/-/g, "/")

    第一种封装为函数

    
    function GetDateDiff(startTime, endTime, diffType) {
        //将xxxx-xx-xx的时间格式,转换为 xxxx/xx/xx的格式 
        startTime = startTime.replace(/-/g, "/");
        endTime = endTime.replace(/-/g, "/");
    
        //将计算间隔类性字符转换为小写
        diffType = diffType.toLowerCase();
        var sTime = new Date(startTime);      //开始时间
        var eTime = new Date(endTime);  //结束时间
        //作为除数的数字
        var divNum = 1;
        switch (diffType) {
            case "second":
                divNum = 1000;
                break;
            case "minute":
                divNum = 1000 * 60;
                break;
            case "hour":
                divNum = 1000 * 3600;
                break;
            case "day":
                divNum = 1000 * 3600 * 24;
                break;
            default:
                break;
        }
        return parseInt((eTime.getTime() - sTime.getTime()) / parseInt(divNum));
    }
    
    var testDate = new Date();
    var testStr = testDate.format("yyyy-MM-dd hh:mm:ss");
    
    var result = GetDateDiff("2010-02-26 16:00:00", testStr, "day");
    document.write("两者时间差为:" + result + "天了。");
    

    第二种

    var date1=new Date('2016/1/1 0:0:0');    //开始时间
    var date2=new Date();    //结束时间
    var date3=date1.getTime()-date2.getTime(); //时间差秒
    //计算出相差天数
    var days=Math.floor(date3/(24*3600*1000));
    
    //计算出小时数
    var leave1=date3%(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);
    alert("时间差" + days + "天" + hours + "时" + minutes + "分" + seconds + "秒");
    
    
  • 相关阅读:
    【MyLocations】标记位置App开发体会
    iOS开发-Core Location和Map Kit
    iOS开发-轻点、触摸和手势
    iOS开发-GCD和后台处理
    iOS开发-block使用与多线程
    iOS开发-数据持久化
    iOS开发-为程序添加应用设置
    对iOS中MVC的理解
    docker
    linux shell
  • 原文地址:https://www.cnblogs.com/shiazhen/p/12036500.html
Copyright © 2011-2022 走看看