Javascript 个人最佳记分员/计时员

Javascript 个人最佳记分员/计时员,javascript,timer,setinterval,Javascript,Timer,Setinterval,我正在制作一个计时器,当单击“通过”按钮上的“确定”时,它会记录最长的时间(个人最佳时间)。我似乎不知道如何使计数器返回到0,我确信有一种方法可以只用两个按钮(开始+通过)来实现。我希望当我按下start时计时器再次启动,此时它只运行每个案例一次并返回最高值。计时器当前记录屏幕上显示的数字后的第二个,我不明白 提前感谢您的帮助,非常感谢 var c=0; var d=0; var-pb; 函数myCounter(){ 文档.GETelEnMyBid(“demo”).nnNeldM= C++;

我正在制作一个计时器,当单击“通过”按钮上的“确定”时,它会记录最长的时间(个人最佳时间)。我似乎不知道如何使计数器返回到0,我确信有一种方法可以只用两个按钮(开始+通过)来实现。我希望当我按下start时计时器再次启动,此时它只运行每个案例一次并返回最高值。计时器当前记录屏幕上显示的数字后的第二个,我不明白

提前感谢您的帮助,非常感谢

var c=0;
var d=0;
var-pb;
函数myCounter(){
文档.GETelEnMyBid(“demo”).nnNeldM= C++;
}
函数restarcount(){
document.getElementById(“demo”).innerHTML=d++;
}
函数userPass(){
如果(确认(“你确定吗?”){
控制台日志(c,d);
clearInterval(myCounter);
clearInterval(重新计数);
document.getElementById(“personalBest”).innerHTML=Math.max(c,d);
}否则{
document.getElementById(“good”).innerHTML=“继续!”;
}
}
最佳时间=

启动计数器! 通过
重新启动
出现了一些错误

  • 计时器变量名和函数变量名是相同的,它们需要不同。另外,调用一个简单的方法比从
    onclick
    启动计时器更简洁

  • 无需第二次启动按钮,请确保在启动新计时器之前清除
    c
    timer

var c=0;
var d=0;
var myCounter;
函数myCounter1(){
c=0;//将c设置为0;
clearInterval(myCounter);
myCounter=setInterval(()=>{
文档.GETelEnMyBid(“demo”).nnNeldM= C++;
}, 1000);
}
函数userPass(){
如果(确认(“你确定吗?”){
d=数学最大值(c,d);
clearInterval(myCounter);
document.getElementById(“personalBest”).innerHTML=d;
}否则{
document.getElementById(“good”).innerHTML=“继续!”;
}
}
最佳时间=

启动计数器!
通过
关于您的第二个问题“计时器当前记录屏幕上显示的我不理解的数字后的第二个。”

这与您在此行中放置++的位置相链接

document.getElementById("demo").innerHTML = c++;
c++意味着获取c的值,然后增加它。我相信您希望先递增(因为已经过了1秒),然后分配和使用。 在这种情况下,您应该改用++c

document.getElementById("demo").innerHTML = ++c;

谢谢,这很好用!即使在我离开页面并让脚本保留最高分数的记录后,如何保持计数器运行,这是通过localStorage实现的吗?如果是这样的话,我需要在脚本中的什么地方放置这个?再次感谢。