Javascript I';我对setInterval()有些问题
我想要我的秒表,就好像完成了60秒。再次从0开始应该有一个以分钟和秒为单位的增量。我尝试了很多方法,但是当时间只有一分钟的时候,它总是停止工作。。它是Javascript I';我对setInterval()有些问题,javascript,Javascript,我想要我的秒表,就好像完成了60秒。再次从0开始应该有一个以分钟和秒为单位的增量。我尝试了很多方法,但是当时间只有一分钟的时候,它总是停止工作。。它是setInterval()中的内置问题吗 这个方法对你有用吗 timer () { let seconds = 0; const tick = () => { this.timerText.textContent = seconds; this.timerSecond.textContent = `${seconds
setInterval()中的内置问题吗
这个方法对你有用吗
timer () {
let seconds = 0;
const tick = () => {
this.timerText.textContent = seconds;
this.timerSecond.textContent = `${seconds % 60}`.padStart(2, '0');
this.timerMinute.textContent = Math.floor(seconds / 60);
seconds++;
};
tick();
return setInterval(tick, 1000);
}
很难说为什么有两个单独的setInterval()
调用,但我删除了每100毫秒调用一次的调用,并将逻辑组合成一个
timerSecond
使用seconds
的模60,timerMite
使用整数除以60的结果,而timerText
只直接接收seconds
,就像在初始代码中一样
async
关键字没有给代码增加任何价值,因为它没有使用承诺,所以我删除了它
下面是一个稍微详细说明的示例来演示功能:
class秒表{
timerText=document.querySelector('.text');
timerSecond=document.querySelector('.second');
timerMiute=document.querySelector('.minute');
计时器(){
设秒=0;
常数滴答=()=>{
this.timerText.textContent=秒;
this.timerSecond.textContent=`${seconds%60}`.padStart(2,'0');
this.timerMinute.textContent=Math.floor(秒/60);
秒++;
};
勾选();
返回设置间隔(刻度,1000);
}
}
新秒表()计时器()代码>
:
这种方法对您有效吗
timer () {
let seconds = 0;
const tick = () => {
this.timerText.textContent = seconds;
this.timerSecond.textContent = `${seconds % 60}`.padStart(2, '0');
this.timerMinute.textContent = Math.floor(seconds / 60);
seconds++;
};
tick();
return setInterval(tick, 1000);
}
很难说为什么有两个单独的setInterval()
调用,但我删除了每100毫秒调用一次的调用,并将逻辑组合成一个
timerSecond
使用seconds
的模60,timerMite
使用整数除以60的结果,而timerText
只直接接收seconds
,就像在初始代码中一样
async
关键字没有给代码增加任何价值,因为它没有使用承诺,所以我删除了它
下面是一个稍微详细说明的示例来演示功能:
class秒表{
timerText=document.querySelector('.text');
timerSecond=document.querySelector('.second');
timerMiute=document.querySelector('.minute');
计时器(){
设秒=0;
常数滴答=()=>{
this.timerText.textContent=秒;
this.timerSecond.textContent=`${seconds%60}`.padStart(2,'0');
this.timerMinute.textContent=Math.floor(秒/60);
秒++;
};
勾选();
返回设置间隔(刻度,1000);
}
}
新秒表()计时器()代码>
:
下面是一个基本示例,介绍如何制作从60(或任何其他数字)开始倒计时的计数器,并将其显示在页面上
//对保存计数的html元素的引用
const counterDiv=document.getElementById('counter');
//变量,该变量将跟踪要倒计时的秒数
const secondsToCount=60;
//将计数器的初始值设置为secondsToCount变量。
//计数器将每1000ms | 1s更新一次,并将进行更改
//到要从中倒计时的剩余秒数的值
//这就是为什么这个变量与常量相对
让计数器=秒计数;
//设置计数器html元素的初始文本
counterDiv.innerHTML=secondsToCount;
//这个函数将为我们计数。
常量间隔=设置间隔(()=>{
//将当前计数器值减1
计数器--;
//更新文本以显示计数器的新值
counterDiv.innerHTML=计数器;
//如果计数器为===0,则计数器已完成。她需要一些文本。
如果(计数器==0){
//清除间隔(否则,您将继续计数
//变成负数
间隔时间;
//显示完成的文本
counterDiv.innerHTML=`已完成从${secondsToCount}秒开始的倒计时';
}
},1000);/1000毫秒| 1秒
下面是一个基本示例,介绍如何制作从60(或任何其他数字)开始倒计时的计数器,并将其显示在页面上
//对保存计数的html元素的引用
const counterDiv=document.getElementById('counter');
//变量,该变量将跟踪要倒计时的秒数
const secondsToCount=60;
//将计数器的初始值设置为secondsToCount变量。
//计数器将每1000ms | 1s更新一次,并将进行更改
//到要从中倒计时的剩余秒数的值
//这就是为什么这个变量与常量相对
让计数器=秒计数;
//设置计数器html元素的初始文本
counterDiv.innerHTML=secondsToCount;
//这个函数将为我们计数。
常量间隔=设置间隔(()=>{
//将当前计数器值减1
计数器--;
//更新文本以显示计数器的新值
counterDiv.innerHTML=计数器;
//如果计数器为===0,则计数器已完成。她需要一些文本。
如果(计数器==0){
//清除间隔(否则,您将继续计数
//变成负数
间隔时间;
//显示完成的文本
counterDiv.innerHTML=`已完成从${secondsToCount}秒开始的倒计时';
}
},1000);/1000毫秒| 1秒
这很简单:
var秒=0;
setInterval(函数(){
勾选(document.getElementById(“计时器”),++秒);
}, 1000);
功能刻度(ele,secs){
ele.innerHTML=Math.floor(secs/60)+“:”+(secs%60<10?:”)+secs%60;
}
0:00
这很简单:
var秒=0;
setInterval(函数(){
勾选(document.getElementById(“计时器”),++秒);
}, 1000);
功能刻度(ele,secs){
ele.innerHTML=Math.floor(secs/60)+“:”+(secs%60<10?:”)+secs%60;
}
0:00
您的代码有问题。语法为inv