gpt4 book ai didi

javascript - setInterval 是否重复?

转载 作者:行者123 更新时间:2023-11-30 16:23:44 24 4
gpt4 key购买 nike

抱歉,如果您认为我问了太多问题,这可能是我的最后一个问题。所以,这里是削减。有一个按钮调用“nodeIncrease();”函数和 setInterval 是应该重复的,但它什么也没做。我不知道我是否应该在某处放置一个 while (true) 循环,但我试过了,它只会让我的浏览器滞后。

var click = 1;
var unitt = 0;
var node = 0;
var nodePrice = 10;
var nodeInterval;
function unittIncrease() {
unitt += click;
document.getElementById('unitts').innerHTML = "Unitts: " + unitt;
}
function nodeIncrease() {
if (unitt >= nodePrice) {
clearInterval(nodeInterval);
node++;
unitt -= nodePrice;
document.getElementById('unitts').innerHTML = "Unitts: " + unitt
document.getElementById('nodes').innerHTML = "Nodes: " + node + " - $" + nodePrice;
nodeIntervalHandler();
} else {
alert("Inefficient amount of unitts.")
}
}
function nodeIntervalHandler() {
nodeInterval = setInterval(nodeLoop, 1000);
}
function nodeLoop() {
unitt += (node * 0.1)
}

最佳答案

是的,setInterval 会一直重复,直到您以停止的间隔调用 clearInterval。例如,以下代码将计数到 5。setInterval 设置计数器,setTimeout 设置 5 秒内的单个事件以停止计数器,clearInterval 停止计数。

var value = 0;
var log = document.getElementById('log');

function increment() {
value++;
log.innerHTML = log.innerHTML + '<li>' + value + '</li>'
}

var count = setInterval(increment, 1000);

setTimeout(function() {
clearInterval(count);
}, 5000);
<ul id="log"></ul>

关于javascript - setInterval 是否重复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34387922/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com