JavaScript时间数学计算器

问题描述

我尝试过的问题

用户输入MM时间 用户输入运行时间

如何计算:

(mm+rResult) - Live Real time

示例:

用户输入MM:15:22 用户输入运行时间:5:16

MM +结果:20:38 实时:16:25

如何计算: 剩余时间(mm+rResult-Liverealtime): 4:12(如果连续倒数,则为额外选项)

html:

<body onload="startTime()">

<label for="appt">Live Time:</label>

<div id="liverealtime"></div>

<p></p>

<span>MM Time</span>: <input type="text" id="date1">
<p></p>
<span>Run Time</span>: <input type="text" id="date2">
<p></p>

<span>MM time + Runtime</span>: <p id="mm+rResult"></p>

<button onclick="myFunction()">Click me</button>

javascript:

function startTime() {
  var today = new Date();
  var h = today.getHours();
  var m = today.getMinutes();
  var s = today.getSeconds();
  m = checkTime(m);
  s = checkTime(s);

  document.getElementById('liverealtime').innerHTML =
  h + ":" + m + ":" + s;

  var t = setTimeout(startTime,500);
}
function checkTime(i) {
  if (i < 10) {i = "0" + i};  // add zero in front of numbers < 10
  return i;
}


function sum(date1,date2){
    
    var date1= document.getElementById('date1').value;
        var date2 = document.getElementById('date2').value;


    

  date1 = date1.split(":");
  date2 = date2.split(":");
  const result = [];

  date1.reduceRight((carry,num,index) => {
    const max = [24,60,60][index];
    const add =  +date2[index];
    result.unshift( (+num+add+carry) % max );
    return Math.floor( (+num + add + carry) / max );
  },0);

 return result.join(":");
}



function myFunction() {
  document.getElementById("mm+rResult").innerHTML = sum("date1","date2" )
}

请帮助解决我的问题 谢谢

jsfiddle链接:0zmk7dLp / 1 /

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)