gpt4 book ai didi

javascript - 如何减去两个时间字符串 (HH :MM) in javascript?

转载 作者:行者123 更新时间:2023-12-01 21:55:58 26 4
gpt4 key购买 nike

我有两个时间字符串,例如 03:01 和 01:19 。我想减去这两个,我试过如下,

var time1= "03:01".split(':');
var time2= "01:19".split(':');
var minutes = Math.abs(Number(time1[1])-Number(time2[1]));
var hours = Math.floor(parseInt(minutes / 60));
hours = Math.abs(Number(time1[0])-Number(time2[0])-hours);
minutes = minutes % 60;
if(hours.toString().length == 1){
hours = '0'+hours;
}
if(minutes.toString().length == 1){
minutes = '0'+minutes;
}
console.log(hours+':'+minutes);

Expected Answer -> 01:42

Actual Answer -> 02:18

有人能告诉我,我哪里做错了吗?

最佳答案

使用如下几个实用函数可能会有所帮助。

基本上 strToMins 将字符串转换为分钟。和 minsToStr 转换回字符串。

示例如下。

var time1= "03:01";
var time2= "01:19";

function strToMins(t) {
var s = t.split(":");
return Number(s[0]) * 60 + Number(s[1]);
}

function minsToStr(t) {
return Math.trunc(t / 60)+':'+('00' + t % 60).slice(-2);
}

var result = minsToStr( strToMins(time1) - strToMins(time2) );
console.log(result);

关于javascript - 如何减去两个时间字符串 (HH :MM) in javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57111055/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com