JavaScript:我如何让数组倒计时10秒?
我想倒计时,从10秒到1秒。当前秒/索引应打印在div标记中。但它不显示数字,而是进入函数。它没有结束,所以它进入了一个永无止境 ` var myCountdown=[1,2,3,4,5,6,7,8,9,10]JavaScript:我如何让数组倒计时10秒?,javascript,arrays,Javascript,Arrays,我想倒计时,从10秒到1秒。当前秒/索引应打印在div标记中。但它不显示数字,而是进入函数。它没有结束,所以它进入了一个永无止境 ` var myCountdown=[1,2,3,4,5,6,7,8,9,10] setInterval(timer(), 1000); timer = () => { for(i = 0; i < myCountdown.length; i++){ console.log(myCountdown[i]);
setInterval(timer(), 1000);
timer = () => {
for(i = 0; i < myCountdown.length; i++){
console.log(myCountdown[i]);
document.getElementById("test").innerHTML += myCountdown[i];
}}
setInterval(timer(),1000);
计时器=()=>{
对于(i=0;i
`
试试这个,正如蒂姆在评论中提到的那样,你必须停止间歇
var token = setInterval(timer, 1000); // Set the timer function to run every 1000ms until we tell it to stop.
var element = document.getElementById("test");
var i = 10;
function timer() {
if (i <= 0) {
clearInterval(token); // Stop counting down.
} else {
i -= 1; // Count down.
element.innerHTML = i;
}
}
var-token=setInterval(计时器,1000);//将计时器功能设置为每1000毫秒运行一次,直到我们告诉它停止。
var元素=document.getElementById(“测试”);
var i=10;
函数计时器(){
如果(i如果你真的想使用数组,下面是解决方案:
const倒计时=['1'、'2'、'3'、'4'、'5']
let timer=setInterval(()=>{
if(countdown.length)document.getElementById(“test”).innerHTML=countdown.shift();
else clearInterval(计时器)
}, 1000)
为演示运行此代码段:
const倒计时=['1'、'2'、'3'、'4'、'5']
let timer=setInterval(()=>{
if(countdown.length)document.getElementById(“test”).innerHTML=countdown.shift();
else clearInterval(计时器)
},1000)
正文{
颜色:#fff;
背景:番茄;
显示器:flex;
证明内容:中心;
对齐项目:居中;
}
只有在显式终止间隔时才会终止间隔(请参阅)。实际上,函数timer
将只被调用一次。行setInterval(timer(),1000);
应读取setInterval(timer,1000);
否则将调用timer()
,并将结果传递给setInterval
var token = setInterval(timer, 1000); // Set the timer function to run every 1000ms until we tell it to stop.
var element = document.getElementById("test");
var i = 10;
function timer() {
if (i <= 0) {
clearInterval(token); // Stop counting down.
} else {
i -= 1; // Count down.
element.innerHTML = i;
}
}