2

我有一个以秒为单位的时间码,精确到小数点后三位。(例如 10.675)我想将其格式化为读取 mm:ss(例如 00:32 或 23:04)。是否有 Javascript 或 jQuery 基础函数可以做到这一点?每当我搜索时,我只会找到如何向日期选择器添加时间。

4

2 回答 2

2

尝试以下方法:

function formateDate( seconds ) {
    var date = new Date(seconds * 1000);
    return date.getMinutes() + ":" + date.getSeconds();
}

这将创建一个新日期,您可以在其中专注于时间方面。但是,如果您需要超过 24 小时,这将无法正常工作。为此,您需要比较两个日期。或者只是使用除法和模数手动进行计算。

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date/

于 2012-07-30T20:40:39.123 回答
1

我不相信 jQuery 默认对此有任何支持,但编写你自己的相当简单。例如:

function formatTime(seconds) {
    var mins = Math.floor(seconds/60),
        secs = Math.floor(seconds) - (60*mins);
    return (mins < 10 ? '0' + mins : mins) + ':' + (secs < 10 ? '0' + secs : secs);
}

但是,如果时间码大于 60 分钟,这将无法正常工作,在这种情况下,您只需要添加小时数。

于 2012-07-30T20:44:49.883 回答