在javascript中将时间字符串转换为时间值

新手上路,请多包涵

我有一个看起来像“01:12:33”的字符串,它是 HH:MM:SS 格式。如何将其转换为 JS 中的时间值?

我尝试了新的 Date() 构造函数并将年和日值设置为 0,然后执行 getTime(),但我没有任何运气。

原文由 Milos 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 178
1 个回答

用日期作为前缀:

 var hms = "01:12:33";
var target = new Date("1970-01-01T" + hms);
console.log(target);

那里 target.getTime() 会给你自一天开始以来的毫秒数;

或者,如果您需要它是今天的日期:

 var now = new Date();
var nowDateTime = now.toISOString();
var nowDate = nowDateTime.split('T')[0];
var hms = '01:12:33';
var target = new Date(nowDate + 'T' + hms);
console.log(target);

那里 target.getTime() 会给你自纪元以来的毫秒数。

原文由 cwallenpoole 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题