所以,如果我做了一个功能
function start(callback) {
//do stuff
callback()
}
如何一遍又一遍地重复此功能?
答案 0 :(得分:1)
你可以通过interval
来完成。在这个例子中,函数get每100毫秒执行一次。
setInterval(function() {
console.log("Stuff");
}, 100);

或者你叫它一次让它自己调用。 (没有让它可执行,网站会崩溃。)
function doStuff() {
console.log("Stuff");
doStuff();
}
while循环也可以做到。 (这里也是。)
function doStuff() {
console.log("Stuff");
}
while (true) {
doStuff();
}
答案 1 :(得分:0)
您可以使用while
statement true
作为条件部分。
function start(callback) {
//do stuff
while (true) {
callback();
}
}
答案 2 :(得分:0)
一个简单的包装器:
function wrapper() {
start(wrapper);
}
wrapper();
但是有一个问题 - 如果你的启动函数没有破坏callstack(有任何IO),那么这种方法最终会溢出callstack。
更安全的一个:
function wrapper() {
setTimeout(() =>{start(wrapper)}, 0);
}
wrapper();
答案 3 :(得分:0)
你也可以使用SetInterval,但Nina Scholz的回答更好。 SetInterval示例:
setInterval(function () {
for (var i = 0; i < positionList.length; i++) {
if (i != 19)
if (posList[19].left == posList[i].left && posList[19].top == posList[i].top) {
window.location.reload();
}
}
}, 200)
每200毫秒调用此函数。
答案 4 :(得分:0)
setInterval(
function(){
alert("Hello");
},2000
);
使用setInterval方法,它将每2秒回调一次你的函数