我创建了一个函数,用于检测毫秒并将其转换为分钟和秒。我想做的是,如果数字小于10,则分钟和第二个变量中的一个(或两个)前面都加一个零。因此,例如,如果我有一个整数184213且其结果为3:4,我希望它为03:04。是否有一种简短的方法来做到这一点,而不必写出很长的条件或三进制?



msToTime(184213);

function msToTime(milliseconds) {
  var minutes = parseInt(milliseconds/(1000*60)%60),
      seconds = parseInt((milliseconds/1000)%60);
  return minutes + ':' + seconds;
}

最佳答案

使用Dateslice的方法略有不同:

function msToTime(milliseconds) {
  var date = new Date(milliseconds);
  return date.toTimeString().slice(3,8);
}

msToTime(184213);
// outputs: "03:04"


一个小警告是,这当然将限制为“ 23:59”,并且将始终是底值,因为不会显示分钟内的任何毫秒值。

09-30 22:54