js计算两个日期的时间差

原理
js的Date对象中有getTime()这个方法,它的作用是返回 1970 年 1 月 1 日至今的毫秒数。我们可以将两个日期转换为毫秒数再减去即可获得它们的时间差。

var t1= new Date();
var t2=new Date(2020,10,1);
document.write("相差"+parseInt(Math.abs((t2.getTime()-t1.getTime()))/1000/60/60/24)+"天<br>");
document.write("相差"+parseInt(Math.abs((t2.getTime()-t1.getTime()))/1000/60/60)+"小时<br>");
document.write("相差"+parseInt(Math.abs((t2.getTime()-t1.getTime()))/1000/60)+"分钟<br>");
document.write("相差"+parseInt(Math.abs((t2.getTime()-t1.getTime()))/1000)+"秒<br>");
document.write("相差"+parseInt(Math.abs(t2.getTime()-t1.getTime()))+"毫秒<br>");

在这里插入图片描述
这就是js计算时间差的一个简单方法,除此之外,还有其它类似的方法这里不再介绍。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要算出48小时之后的日期时分秒并排除节假日,可以在前面算出48小时之后的日期的基础上,再使用 moment.js 库进行时分秒的计算。以下是一个示例代码: ```javascript // 引入 moment.js 库和 jQuery 库 <script src="https://cdn.bootcdn.net/ajax/libs/moment.js/2.29.1/moment.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script> // 定义需要排除的节假日数组 var holidayList = ['元旦', '春节', '清明节', '劳动节', '端午节', '中秋节', '国庆节']; // 计算48小时之后的日期 var now = moment(); // 获取当前时间 var after48h = moment(now).add(48, 'hours'); // 计算48小时之后的时间 // 循环查询是否为节假日 while (true) { var date = after48h.format('YYYY-MM-DD'); // 获取日期字符串 var holiday = ''; // 节假日信息 $.ajax({ type: "get", url: 'http://v.juhe.cn/calendar/day', data: { key: '你的聚合数据AppKey', date: date }, async: false, // 设置同步请求 dataType: "jsonp", success: function (data) { if (data.error_code == 0) { holiday = data.result.data.holiday; // 节假日信息 } else { console.log(data.reason); } }, error: function () { console.log('请求失败'); } }); // 如果不是节假日则退出循环 if (holidayList.indexOf(holiday) < 0) { break; } // 如果是节假日则继续往后推一天 after48h = moment(after48h).add(1, 'days'); } // 使用 moment.js 库进行时分秒的计算 var after48hWithTime = moment(after48h).set({ 'hour': now.hour(), 'minute': now.minute(), 'second': now.second() }); // 输出结果 console.log('48小时之后的日期(排除节假日)为:' + after48hWithTime.format('YYYY年MM月DD日 HH:mm:ss')); ``` 以上代码中首先使用 moment.js计算出48小时之后的日期,并循环查询是否为节假日。然后使用 moment.js 库进行时分秒的计算,将48小时之后的日期的时分秒设置为当前时间的时分秒。最后输出排除节假日的48小时之后的日期和时间。需要注意的是,以上代码中同样使用了 jQuery 库的同步请求,这样可以保证查询节假日的结果能够及时返回并被使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值