• Js日期时间差计算和格式化


    1.时间差计算

      var startDate = "2016-06-06";
                var endDate   = "2016-08-08";
                var start=new Date(startDate.replace("-", "/").replace("-", "/")); 
                var end=new Date(endDate.replace("-", "/").replace("-", "/"));
                if (startDate != "" || endDate != "") {
                    if (startDate != "" && endDate != "" && endDate.length > 0 && start <= end) {
                        var sjc=end.getTime()-start.getTime();    //时间差的毫秒数  
                        var days=Math.floor(sjc/(24*3600*1000));  //计算出相差天数
                        
                        var leave1=sjc%(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+" 秒");  
                        
                        var year1 =  startDate.substr(0,4);
                        var year2 =  endDate.substr(0,4); 
                        var month1 = startDate.substr(5,2);
                        var month2 = endDate.substr(5,2);
                        var len=(year2-year1)*12+(month2-month1); //计算出相差月份
                        
                    }else {
                        alert("请输入正确的时间范围");
                        return false;
                    }
                }

    2.时间格式化

    /**
             * 日期格式化
             * date:日期对象
             * format:时间格式
          * 引用  : deteFormat(new Date("2016-05-05 12:23:26"),"yyyy-MM-dd HH:mm:ss")
             */
            dateFormat:function (date,format) { //author: meizz 
                var o = {
                    "M+": date.getMonth() + 1, //月份 
                    "d+": date.getDate(), //
                    "h+": date.getHours(), //小时 
                    "m+": date.getMinutes(), //
                    "s+": date.getSeconds(), //
                    "q+": Math.floor((date.getMonth() + 3) / 3), //季度 
                    "S": date.getMilliseconds() //毫秒 
                };
                if (/(y+)/.test(format)) {
                    format = format.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
                }
                for (var k in o)
                if (new RegExp("(" + k + ")").test(format)) 
                    format = format.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
                return format;
             }
  • 相关阅读:
    0Day – 2011.1.20[From B4A]
    0Day – 2011.1.16[From B4A]
    ubuntu 桌面下方的面板(任务栏)恢复方法
    Delphi WebBrowser用法几则浅谈
    0Day – 2011.1.3[From B4A]
    0Day – 2011.1.8[From B4A]
    0Day – 2011.1.6[From B4A]
    0Day – 2011.1.10[From B4A]
    0Day – 2011.01.21[From B4A]
    0Day – 2011.1.7[From B4A]
  • 原文地址:https://www.cnblogs.com/yxkNotes/p/12874705.html
Copyright © 2020-2023  润新知