JavaScript秒时间字符串,格式为HH:mm:SS我希望将持续时间(即秒数)转换为以冒号分隔的时间字符串(hh:mm:ss)。我在这里找到了一些有用的答案,但他们都谈到转换为x小时和x分钟格式。那么,在jQuery中是否有一个很小的代码片段,或者仅仅是原始的JavaScript呢?
3 回答

海绵宝宝撒
TA贡献1809条经验 获得超8个赞
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 hours+':'+minutes+':'+seconds;}
alert("5678".toHHMMSS());
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 hours + ':' + minutes + ':' + seconds;} console.log("5678".toHHMMSS());

FFIVE
TA贡献1797条经验 获得超6个赞
在JS Date方法的帮助下,您可以在没有任何外部JS库的情况下做到这一点,如下所示:
var date = new Date(null);
date.setSeconds(45); // specify value for SECONDS here
var timeString = date.toISOString().substr(11, 8);
console.log(timeString)

斯蒂芬大帝
TA贡献1827条经验 获得超8个赞
获取格式中的时间部分hh:MM:ss,可以使用以下正则表达式:
(上面有人在同一篇文章中提到了这一点,谢谢。)
var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
console.log(myDate)
添加回答
举报
0/150
提交
取消