gpt4 book ai didi

javascript - 当达到数组长度时 setInterval 函数不会停止

转载 作者:行者123 更新时间:2023-12-02 14:29:43 27 4
gpt4 key购买 nike

我有一个简单的 setInterval 函数,它是在 for 循环内完成的。我的目标是我希望该函数在数组中的每个位置上运行,并且一旦到达末尾,我希望它停止。然而,这并没有发生。超时功能继续无限运行。谁能解释我哪里出了问题以及我需要做什么来解决这个问题?

JS

Keyhole.bufferArray = [Keyhole.twoMileBuffer, Keyhole.fiveMileBuffer, Keyhole.tenMileBuffer, Keyhole.twentyFiveMileBuffer];

var ticker = -1;
for(var i = 0; i < Keyhole.bufferArray.length; i++){
var populateServices = setInterval(function(){
++ticker;
addBuffersToService(Keyhole, i);
if(ticker >= Keyhole.bufferArray.length - 1){
ticker = -1;
clearInterval(populateServices);
}
}, 1000)
}

function addBuffersToService(Keyhole, index){
console.log(Keyhole);
}

最佳答案

因为你有一个 for 循环,它为数组的每个索引创建一个间隔。如果您使用间隔循环数组,则不应使用 for 循环。 删除 for 循环。

关于javascript - 当达到数组长度时 setInterval 函数不会停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37945319/

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