为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

烙印99 2019-08-17 15:44:14
仅在javascript中将HH:MM:SS字符串转换为秒但在javascript中。我已经看到很多将秒转换成不同格式的例子,但不是HH:MM:SS转换为秒。任何帮助,将不胜感激。
查看完整描述

3 回答

?
守着一只汪

TA贡献1872条经验 获得超3个赞

试试这个:


var hms = '02:04:33';   // your input string

var 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);


查看完整回答
反对 回复 2019-08-17
?
catspeake

TA贡献1111条经验 获得超0个赞

这可以通过以下方式非常灵活地完成:

'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));


查看完整回答
反对 回复 2019-08-17
  • 3 回答
  • 0 关注
  • 267 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信