我想在while循环中使用google.script.run, the asynchronous client-side JavaScript API provided by Google Scripts。我明白,调用google.script.run是异步的,所以我甚至尝试使用全局变量'window.i'进行循环迭代。增量while循环成功异步google.script.run
不幸window.i ++从来没有发生,当我运行此代码时,浏览器冻结。
下面是我与挣扎的代码片段:
var iterations = 5;
window.i = 0;
while (window.i < iterations) {
google.script.run
.withSuccessHandler(function(){
window.i++;
})
.sendNow();
}
有没有什么办法可以增加成功的回调循环变量?
为什么你想要它的异步成功处理程序?为什么不在外部和while循环中增加它?因为while循环不会等待异步成功回调。它会继续执行循环,最终您的浏览器将挂起 – kumkanillam
@kumkanillam,它将立即启动所有请求。 sendNow()是顺序的,这很重要。因为在第一次运行之后只处理剩余的记录。 –