计算两个时间的时间差(天、小时、分钟、秒数)

例子:计算某个时间距离当前时间相差的天数

1、获取当前时间

Date.prototype.Format = function (fmt) {
        var o = {
            "M+": this.getMonth() + 1, //月份
            "d+": this.getDate(), //日
            "H+": this.getHours(), //小时
            "m+": this.getMinutes(), //分
            "s+": this.getSeconds(), //秒
            "q+": Math.floor((this.getMonth() + 3) / 3), //季度
            "S": this.getMilliseconds() //毫秒
        };
        if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
        for (var k in o)
        if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
        return fmt;
}
var time2 = new Date().Format("yyyy-MM-dd HH:mm:ss");  //获取当前时间

2、计算两个时间相差(天、小时、分钟、秒数)的函数

function GetDateDiff(startTime,endTime,diffType){
      startTime=startTime.replace(/\-/g,"/");
      endTime=endTime.replace(/\-/g,"/");
      diffType=diffType.toLowerCase();
      var sTime = new Date(startTime);    //开始时间
      var eTime = new Date(endTime);  //结束时间</font>
      //作为除数的数字
      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));
}

3、调用函数 计算相差天数

var ti = GetDateDiff(‘2019-10-09 19:00:00‘,‘2019-12-12 14:33:30‘,‘day‘);  //获取两个时间相差天数

原文地址:https://www.cnblogs.com/dxt510/p/12029028.html

时间: 2024-10-23 02:58:37

计算两个时间的时间差(天、小时、分钟、秒数)的相关文章

NSDate仅获取日期年月日的实现--即只要年月日,不要多余的小时分钟秒数

(仅个人鄙见,如有不同,或效率不高还请指出,谢谢) 最近在写一个背单词的app,根据艾宾浩斯曲线来复习强化记忆,需要计算两次复习的相差天数,正好需要获取一个(不包含当天时间)的日期 比如我们用 [NSDate date]获取当前时间,得到的数据如下: 2015-03-13 14:08:55 +0000 很明显,我只要想要 2015-03-13,它后面还多了 14:08:55 (当天的具体时间),这样再转成NSTimeInterval的时候计算两次时间差有可能不符合我的判别复习要求(即未满相隔1天

在windows下计算两个时间的时间差(精确到毫秒)

首先,认识一下clock()和GetTickCount(): 一.clock() clock()是C/C++中的计时函数,而与其相关的数据类型是clock_t.在MSDN中,查得对clock函数定义如下: clock_t clock(void) ; 简单而言,就是该程序从启动到函数调用占用CPU的时间.这个函数返回从"开启这个程序进程"到"程序中调用clock()函数"时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-cloc

Js Jquery 时间控件显示小时 分钟 秒

// ui.js 自带的datepicker 插件只能显示日期不能显示时分秒  使用dateTimePicker可以显示时间 效果图: 首先需要引用 js和css 注意 ui.js的顺序要在slide 和timepicker 前面 否者无法运行 <script src="../Scripts/jquery-1.7.1.min.js"></script> <script src="../Content/themes/timepicker/js/jq

MySql计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数

MySql计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数 计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数,这里主要分享的是通过MySql内置的函数 TimeStampDiff() 实现. 函数 TimeStampDiff() 是MySQL本身提供的可以计算两个时间间隔的函数,语法为: TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2) 返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之

js实现的计算两个时间之间的时间差

js实现的计算两个时间之间的时间差:在实际应用中,需要计算两个时间点之间的差距,一般来说都是计算当前时间和一个指定时间点之间的差距,并且有时候需要精确到天.小时.分钟和秒,下面就简单介绍一下如何实现此效果.代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.

mysql中计算两个日期的时间差函数TIMESTAMPDIFF用法

mysql中计算两个日期的时间差函数TIMESTAMPDIFF用法: 语法: TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2) 说明: 返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差.其结果的单位由interval 参数给出.interval 的法定值同TIMESTAMPADD()函数说明中所列出的相同. mysql> SELECT TIMESTAMPDIFF(MONTH,'200

js计算两个时间相差的天数

day1='2014-03-31 00:00:01'; function get_day(day1,day2){ var s = day1; var dt = Date.parse(s.replace(/-/g,"/")); var day1 = new Date(dt); var s = day2; var dt = Date.parse(s.replace(/-/g,"/")); var day2 = new Date(dt); var date3=day1.g

C/C++中计算两个时间相差的天数

在系统中经常用到time()函数获取系统时间,也就是通常所说的日历时间,这个时间是从1970年1月1日0时开始到现在的秒数. 问:已有日历时间t1和t2(假设t1>t2),如何计算他们之间相差的天数. 答: day = (t1+time_zone*60*60)/time_of_day - (t2+time_zone*60*60)/time_of_day 其中time_zone表示时区间隔,比如说北京时间相比于标准时间就需要加8小时,可以参考下图.time_of_day为一天的秒数,等于24*60

js 计算两个时间的差

比如得到两个时间的字符串 2013-01-21 11:10:49   2013-01-21 11:14:43,要用后面的时间减去前面的时间 直接上代码 var begen = new Date(value[0]["createtime"]) var end = new Date(value[i]["createtime"]) var cha = end.getTime()-begen.getTime(); console.log(cha); console.log(