将任何字符串时间转换为秒

时间:2012-11-18 05:38:17

标签: javascript

我正在尝试将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,因为时间是一个随机字符串。

2 个答案:

答案 0 :(得分:2)

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

如果您想使用操纵日期字符串的方法表达15分钟,请尝试'00:15:00'。

答案 1 :(得分: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/