我应该如何在javascript中使用Date()实现这个秒表/时间计数器?

我应该如何在javascript中使用Date()实现这个秒表/时间计数器?,javascript,jquery,Javascript,Jquery,因此,我正在使用Phonegap构建一个应用程序,其中包括按下一个按钮,启动计数器数秒/分钟/小时,直到您按下停止键并显示它。当设备屏幕打开时,我使用setInterval和一系列if语句使其工作,如: setInterval(function () { if (buttonpress === true) { second += 1; if (second > 59) { minute += 1; se

因此,我正在使用Phonegap构建一个应用程序,其中包括按下一个按钮,启动计数器数秒/分钟/小时,直到您按下停止键并显示它。当设备屏幕打开时,我使用setInterval和一系列if语句使其工作,如:

setInterval(function () {
    if (buttonpress === true) {
        second += 1;
        if (second > 59) {
            minute += 1;
            second = 0;
        };
        //etc to minute and hour
    };
};
问题是,我需要实现一个后台服务,以便在设备屏幕关闭时保持setInterval/秒表计数,这将是一个相当大的麻烦。我突然想到,我可以简单地使用“var local=new Date();”和“local.getMinutes/Hours/Seconds();”获取当前时间

我可以理解,首先,这可能不是实现这种计数器的最佳方式,这就是为什么我在基于一天中的时间实现新计数器时遇到一些麻烦的原因。 我很难获得按下按钮的初始时间,将其转换为按下按钮后经过的时间,并在设置间隔内显示,如果您关闭设备屏幕,它将在您重新打开屏幕时显示准确的时间间隔。
谢谢你的帮助。

也许可以看看moment.js。这是我对javascript中任何与日期/时间相关的内容的追求。现在还不清楚你到底想测量什么。你只是想测量一下按钮被按下的时间吗?如果是这样,那么您根本不需要间隔计时器。只需记录按钮按下时的时间,然后检查按钮按下时的时间,并减去这两个时间,以查看按钮按下的时间。是的,我只有一个切换按钮,我希望它能够实时显示自您最初按下按钮到停止按钮的时间。这就是为什么我需要一个setInterval,以便它查找并显示更改。这并不困难,除非我将开始时间减去当前时间,例如,它从8:59开始,在9:02停止,结果是-57,你知道吗?秒和小时也一样,如果你在晚上23:04开始,然后在01:04停止,得到-22,而不是正确的结果2。