JavaScript

JavaScript 时间/日期操作(三)--js计算2个日期之间的时间差

时间/日期 小海豚博客管理员 2020-06-26 13:59:12.0 126 0条

本教程主要是把2个时间转成时间戳就行计算,时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。所以要求两个时间的间隔只需要将两个时间戳相减 就能得到两个时间相差的毫秒数 通过除以3600*1000得到小时数 以此类推。

JavaScript 获取当前时间戳:

第一种方法:

  1. var timestamp = Date.parse(new Date());

结果:1280977330000
第二种方法:

  1. var timestamp = (new Date()).valueOf();

结果:1280977330748

第三种方法:

  1. var timestamp=new Date().getTime();

结果:1280977330748

第一种:获取的时间戳是把毫秒改成000显示,
第二种和第三种是获取了当前毫秒的时间戳。

计算代码如下

faultDate,completeTime为字符串格式,进行计算之前需要使用new Date()函数进行转化
js时间格式化可以看:JavaScript 时间/日期操作(二)—Js时间/日期的格式化与字符串的互转

  1. // 返回格式为xx天xx小时xx分钟
  2. function(faultDate, completeTime) {
  3. var stime = Date.parse(new Date(faultDat));
  4. var etime = Date.parse(new Date(completeTime));
  5. // 两个时间戳相差的毫秒数
  6. var usedTime = etime - stime;
  7. // 计算相差的天数
  8. var days = Math.floor(usedTime / (24 * 3600 * 1000));
  9. // 计算天数后剩余的毫秒数
  10. var leave1 = usedTime % (24 * 3600 * 1000);
  11. // 计算出小时数
  12. var hours = Math.floor(leave1 / (3600 * 1000));
  13. // 计算小时数后剩余的毫秒数
  14. var leave2 = leave1 % (3600 * 1000);
  15. // 计算相差分钟数
  16. var minutes = Math.floor(leave2 / (60 * 1000));
  17. var time = days + "天" + hours + "时" + minutes + "分";
  18. return time;
  19. }
暗锚,解决锚点偏移

文章评论

嘿,来试试登录吧!