猿问

仅在javascript中将HH:MM:SS字符串转换为秒

仅在javascript中将HH:MM:SS字符串转换为秒

但在javascript中。我已经看到很多将秒转换成不同格式的例子,但不是HH:MM:SS转换为秒。任何帮助,将不胜感激。


烙印99
浏览 268回答 3
3回答

守着一只汪

试试这个:var hms = '02:04:33';   // your input stringvar a = hms.split(':'); // split it at the colons// minutes are worth 60 seconds. Hours are worth 60 minutes.var seconds = (+a[0]) * 60 * 60 + (+a[1]) * 60 + (+a[2]); console.log(seconds);

catspeake

这可以通过以下方式非常灵活地完成:'01:02:03'.split(':').reduce((acc,time) => (60 * acc) + +time);这是因为小时,分钟和秒内的每个时间单位是比较小单位大60的倍数。时间被分成小时分和秒组件,然后通过使用较高单位的累计值乘以60来减少到秒,因为它通过每个单元。该 +time用于将时间转换为数值。它基本上最终会做: (60 * ((60 * HHHH) + MM)) + SS如果只传递秒,那么结果将是一个字符串,所以为了解决这个问题,我们可以将整个结果转换为int:+('03'.split(':').reduce((acc,time) => (60 * acc) + +time));
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答