[JavaScript] JavaScript计算两个日期之间的时间差,可以以天或者秒等单位计时 →→→→→进入此内容的聊天室

来自 , 2020-11-04, 写在 JavaScript, 查看 127 次.
URL http://www.code666.cn/view/082a8bbf
  1. <script type="text/javascript">
  2.  
  3. /**
  4. * 时间对象的格式化;
  5. */
  6. Date.prototype.format = function(format){
  7.  /*
  8.   * eg:format="YYYY-MM-dd hh:mm:ss";
  9.   */
  10.         var o = {
  11.                 "M+" :  this.getMonth()+1,  //month
  12.                 "d+" :  this.getDate(),     //day
  13.                 "h+" :  this.getHours(),    //hour
  14.         "m+" :  this.getMinutes(),  //minute
  15.         "s+" :  this.getSeconds(), //second
  16.         "q+" :  Math.floor((this.getMonth()+3)/3),  //quarter
  17.         "S"  :  this.getMilliseconds() //millisecond
  18.         }
  19.  
  20.         if(/(y+)/.test(format)) {
  21.         format = format.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
  22.         }
  23.  
  24.         for(var k in o) {
  25.         if(new RegExp("("+ k +")").test(format)) {
  26.                 format = format.replace(RegExp.$1, RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));
  27.         }
  28.         }
  29.         return format;
  30. }
  31.  
  32.  
  33. /*
  34. * 获得时间差,时间格式为 年-月-日 小时:分钟:秒 或者 年/月/日 小时:分钟:秒
  35. * 其中,年月日为全格式,例如 : 2010-10-12 01:00:00
  36. * 返回精度为:秒,分,小时,天
  37. */
  38.  
  39. function GetDateDiff(startTime, endTime, diffType) {
  40.     //将xxxx-xx-xx的时间格式,转换为 xxxx/xx/xx的格式
  41.     startTime = startTime.replace(/\-/g, "/");
  42.     endTime = endTime.replace(/\-/g, "/");
  43.  
  44.     //将计算间隔类性字符转换为小写
  45.     diffType = diffType.toLowerCase();
  46.     var sTime = new Date(startTime);      //开始时间
  47.     var eTime = new Date(endTime);  //结束时间
  48.     //作为除数的数字
  49.     var divNum = 1;
  50.     switch (diffType) {
  51.         case "second":
  52.             divNum = 1000;
  53.             break;
  54.         case "minute":
  55.             divNum = 1000 * 60;
  56.             break;
  57.         case "hour":
  58.             divNum = 1000 * 3600;
  59.             break;
  60.         case "day":
  61.             divNum = 1000 * 3600 * 24;
  62.             break;
  63.         default:
  64.             break;
  65.     }
  66.     return parseInt((eTime.getTime() - sTime.getTime()) / parseInt(divNum));
  67. }
  68.  
  69. var testDate = new Date();
  70. var testStr = testDate.format("yyyy-MM-dd hh:mm:ss");
  71.  
  72. var result = GetDateDiff("2007-12-3 12:30:00", testStr, "day");
  73. document.write("脚本分享网 www.sharejs.com 建站已有" + result + "天了。");
  74. //alert(result);
  75. </script>
  76.  
  77.  
  78.  
  79. //javascript/5014

回复 "JavaScript计算两个日期之间的时间差,可以以天或者秒等单位计时"

这儿你可以回复上面这条便签

captcha