如何衡量Javascript过去的时间?

How to measure time elapsed on Javascript?

本问题已经有最佳答案,请猛点这里访问。

我创建了一个简单的游戏,用户需要点击框。
当用户完成点击16个框时,游戏结束。

我想测量用户完成游戏所用的时间。
我如何使用Javascript做到这一点?

我看了不同的答案,但我很难理解自定义代码。

计时器开始:当用户点击第一个框时

计时器结束:当用户点击最后一个框时


Date文档说明:

The JavaScript date is based on a time value that is milliseconds
since midnight January 1, 1970, UTC

单击开始按钮,然后单击结束按钮。 它会显示2次点击之间的秒数。

毫秒diff是变量timeDiff。 玩它来寻找秒/分钟/小时/或你需要的东西

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var startTime, endTime;

function start() {
  startTime = new Date();
};

function end() {
  endTime = new Date();
  var timeDiff = endTime - startTime; //in ms
  // strip the ms
  timeDiff /= 1000;

  // get seconds
  var seconds = Math.round(timeDiff);
  console.log(seconds +" seconds");
}
1
2
3
<button onclick="start()">Start</button>

<button onclick="end()">End</button>


1
2
3
4
var seconds = 0;
setInterval(function () {
  seconds++;
}, 1000);

你去了,现在你有一个变量计数秒。 由于我不知道上下文,因此您必须决定是将该变量附加到对象还是将其设置为全局。

设置间隔只是一个函数,它将一个函数作为它的第一个参数,并将一个毫秒重复该函数作为它的第二个参数。

您也可以通过保存和比较时间来解决这个问题。