JavaScript如何计算两个日期间的时间差
2024-07-28 00:11:06 219人阅读
有时候我们需要知道两个日期之间差了多少天,多少小时,甚至多少分钟多少秒。下面我们用JavaScript实现一个函数,用于计算两个日期的时间差,先来看看代码:
01 | <script type= "text/javascript" > |
06 | Date.prototype.format = function (format){ |
11 | "M+" : this .getMonth()+1, |
12 | "d+" : this .getDate(), |
13 | "h+" : this .getHours(), |
14 | "m+" : this .getMinutes(), |
15 | "s+" : this .getSeconds(), |
16 | "q+" : Math.floor(( this .getMonth()+3)/3), |
17 | "S" : this .getMilliseconds() |
20 | if (/(y+)/.test(format)) { |
21 | format = format.replace(RegExp.$1, ( this .getFullYear()+ "" ).substr(4 - RegExp.$1.length)); |
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)); |
39 | function GetDateDiff(startTime, endTime, diffType) { |
41 | startTime = startTime.replace(/\-/g, "/" ); |
42 | endTime = endTime.replace(/\-/g, "/" ); |
45 | diffType = diffType.toLowerCase(); |
46 | var sTime = new Date(startTime); |
47 | var eTime = new Date(endTime); |
61 | divNum = 1000 * 3600 * 24; |
66 | return parseInt((eTime.getTime() - sTime.getTime()) / parseInt(divNum)); |
69 | var testDate = new Date(); |
70 | var testStr = testDate.format( "yyyy-MM-dd hh:mm:ss" ); |
72 | var result = GetDateDiff( "2010-02-26 16:00:00" , testStr, "day" ); |
73 | document.write( "简明现代魔法 www.nowamagic.net 建站已有" + result + "天了。" ); |
使用的方法很简单,比如计算天数可以这样:
1 | GetDateDiff( "2010-02-26 16:00:00" , "2011-07-02 21:48:40" , "day" ); |
计算秒数则可以这样:
1 | GetDateDiff( "2010-02-26 16:00:00" , "2011-07-02 21:48:40" , "second" ); |
实例程序的运行结果如下:广德县能源局
简明现代魔法 www.nowamagic.net 建站已有1695天了。
JavaScript如何计算两个日期间的时间差
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉:
投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。