为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript秒时间字符串,格式为HH:mm:SS

JavaScript秒时间字符串,格式为HH:mm:SS

叮当猫咪 2019-07-04 13:13:26
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());


查看完整回答
反对 回复 2019-07-04
?
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)


查看完整回答
反对 回复 2019-07-04
?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

获取格式中的时间部分hh:MM:ss,可以使用以下正则表达式:


(上面有人在同一篇文章中提到了这一点,谢谢。)


    var myDate = new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");

    console.log(myDate)


查看完整回答
反对 回复 2019-07-04
  • 3 回答
  • 0 关注
  • 1326 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号