我正在制作一个简单的 jQuery 游戏,分数是从开始到结束所经过的时间。目前我正在将经过的时间添加到一个简单的 div 中:
var elapsedTime = new Date().getTime() - startTime;
$('.score').html('"<div>" + elapsedTime + "</div>"');
有没有办法让我将最新的 elaspedTime 与以前的 elaspedTime 进行比较以保持更快的时间/更低的数字?
我正在制作一个简单的 jQuery 游戏,分数是从开始到结束所经过的时间。目前我正在将经过的时间添加到一个简单的 div 中:
var elapsedTime = new Date().getTime() - startTime;
$('.score').html('"<div>" + elapsedTime + "</div>"');
有没有办法让我将最新的 elaspedTime 与以前的 elaspedTime 进行比较以保持更快的时间/更低的数字?
将返回两次中的最低值:
Math.min(lastElapsedTime, newElapsedTime)
对于您的代码,您可能想要...
elapsedTime = Math.min(elapsedTime, new Date().getTime() - startTime);
将这些分数添加到数组中,然后排序。
var scores = [];
scores.push(elapsedTime1);
scores.push(elapsedTime2);
scores.push(elapsedTime3);
//sort it
scores.sort();
// if you want reverse order
scores.reverse();
//get the max and min, but if you have sorted already, that's not necessary.
var min = Math.min.apply(null, scores);
var max = Math.max.apply(null, scores);
您应该回读以前的时间并将其与新计算的时间进行比较。
var current_time = $('.score').text();
var elapsedTime = new Date().getTime() - startTime;
if (elapsedTime < current_time) {
// do stuff
}