简单的javascript每小时时间/金钱计算器

简单的javascript每小时时间/金钱计算器,javascript,time,calculator,Javascript,Time,Calculator,所以我只是在学习Javascript,我正在尝试创建一个可以减去时间的计算器。我还有其他的部分在工作(虽然我很喜欢那里对我的代码的反馈,因为我确信它可以得到很大的改进),我只需要把时间减到正确的位置。我在做简单的数学运算,所以当我从2:00减去1:30(小时和分钟是分开的值)时,我得到的是1:30,而不是00:30 另一个问题是,除非我按两次“获取结果”按钮,否则每小时的黄金价格不会计算 这是我写的第一个脚本,所以请让我知道我应该做什么,我想用最好最简单的方式来完成 计算器和脚本在这里: 我

所以我只是在学习Javascript,我正在尝试创建一个可以减去时间的计算器。我还有其他的部分在工作(虽然我很喜欢那里对我的代码的反馈,因为我确信它可以得到很大的改进),我只需要把时间减到正确的位置。我在做简单的数学运算,所以当我从2:00减去1:30(小时和分钟是分开的值)时,我得到的是1:30,而不是00:30

另一个问题是,除非我按两次“获取结果”按钮,否则每小时的黄金价格不会计算

这是我写的第一个脚本,所以请让我知道我应该做什么,我想用最好最简单的方式来完成

计算器和脚本在这里:

我还希望能够将其扩展到10行,并对所有行进行平均,但我认为,一旦这部分计算出来,我可以自己计算出来


谢谢

您尝试过使用日期函数进行减法吗

var T1=new Date("September 5, 2012 8:10:00");
var T2=new Date("September 5, 2012 13:35:00");
var diff=new Date();
diff.setTime(T2-T1);
alert(diff.getHours()+":"+diff.getMinutes())

问题是,在计算时间时,你把小时和分钟分开处理。您需要将它们与以下内容结合(未经测试):

最后一位,
(“00”+(elapsedMinutes%60)).slice(-2)
取分钟模60,将其附加到字符串“00”,然后取最后两个字符,作为一种快速将pad单位数归零的方法

var starthh = // ...
var startmm = // ...
var endhh = // ...
var endmm = // ...

var elapsedMinutes = (60 * endhh + endmm) - (60 * starthh + startmm)

var displayTime = Math.floor(elapsedMinutes / 60) + ":" 
                + ("00" + (elapsedMinutes % 60)).slice(-2)