将MS转换为DD:HH:MM:SS

时间:2020-05-06 15:58:58

标签: node.js

我想将时间转换为天,小时,分钟和秒,我已经找到了:

    String.prototype.toHHMMSS = function () {
      var sec_num = parseInt(this, 10); // don't forget the second param
      var hours = Math.floor(sec_num / 3600);
      var minutes = Math.floor((sec_num - (hours * 3600)) / 60);
      var seconds = sec_num - (hours * 3600) - (minutes * 60);

      if (hours < 10) {hours = "0"+hours;}
      if (minutes < 10) {minutes = "0"+minutes;}
      if (seconds < 10) {seconds = "0"+seconds;}
      return days+':'+hours+':'+minutes+':'+seconds;
  }

但是我不知道当小时数比24小时优越时如何显示1天

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以通过将秒数除以sec_num /(3600 * 24)来完成,就像您将小时数相乘,只是将其乘以24,下面就是更新的工作代码。

 String.prototype.toHHMMSS = function () {
      var sec_num = parseInt(this, 10); // don't forget the second param
      var days = Math.floor(sec_num / (3600 * 24));
      var hours = Math.floor((sec_num - (days * (3600 * 24))) / 3600);
      var minutes = Math.floor((sec_num - (days * (3600 * 24)) - (hours * 3600)) / 60);
      var seconds = sec_num - (days * (3600 * 24)) - (hours * 3600) - (minutes * 60);

      if (hours < 10) {hours = "0"+hours;}
      if (minutes < 10) {minutes = "0"+minutes;}
      if (seconds < 10) {seconds = "0"+seconds;}
      return days+':'+hours+':'+minutes+':'+seconds;
  }
相关问题