0

我正在尝试将 15:00(15 分钟)转换为秒,尽管当我在下面使用它时得到 54,000。

我正在尝试将 15 分钟转换为秒。

S = '15:00';
D = "1/1/1 "
s = ( new Date(D+S) - new Date(D) )/1000
alert(s);

虽然当我做数学时,它是 60 x 15 = 900。我如何得到 900,因为时间是一个随机字符串。

4

2 回答 2

2

JavaScript 中的时间字符串 '15:00' 指的是一天中的时间 1500 小时,或美式风格的下午 3:00。那是午夜后的 15 小时。这就解释了为什么你有 54,000 秒。

如果您想使用处理日期字符串的方法来表示 15 分钟,请尝试“00:15:00”。

于 2012-11-18T05:49:23.387 回答
2

好吧,如果您的格式始终为“mm:ss”,您可以进行圆顶字符串解析并手动进行数学运算,当然这需要根据输入格式进行调整。

S = '15:25';
var times = S.split(":");
var minutes = times[0];
var seconds = times[1];
seconds = parseInt(seconds, 10) + (parseInt(minutes, 10) * 60);
alert(seconds);​

请注意,在示例中,我明确添加了 25 秒作为演示。

http://jsfiddle.net/Jg4gB/

于 2012-11-18T05:51:22.720 回答