4

从 youtube 播放器http://code.google.com/apis/ajax/playground/?exp=youtube#chromeless_player我得到一个以秒为单位的时间值,例如“243.577”。让它成为一个简单的字符串。

如何将其转换为如下值:'04:35'?就像这个例子的 4 分 35 秒(希望我做出了正确的计算)。

如果该值只有 5 秒,那么它应该给出类似“00:05”的信息。如果为负,则为“00:00”。

4

3 回答 3

11
var raw = "-54";

var time = parseInt(raw,10);
time = time < 0 ? 0 : time;

var minutes = Math.floor(time / 60);
var seconds = time % 60;

minutes = minutes < 10 ? "0"+minutes : minutes;
seconds = seconds < 10 ? "0"+seconds : seconds;

alert(minutes+":"+seconds);

工作演示:http: //jsfiddle.net/8zPRF/

更新

为负数和字符串格式添加了一些行:http: //jsfiddle.net/8zPRF/3/

于 2011-06-28T01:00:56.627 回答
1

你可以做类似的事情

var d = new Date(milliseconds);

为此,您不需要 jQuery。

于 2011-06-28T00:59:16.507 回答
0

我发现Date.js库在处理日期时非常有用。它扩展了内置的 javascript Date 对象。

例如

var timeString = new Date(seconds * 1000).toString('mm:ss');
于 2011-06-28T01:01:44.653 回答