0

当我尝试从本地 sqlite 或 ajax 请求中获取某些内容时,我无法返回一些值,我需要运行回调。

我有一些相当大的函数可以获取和处理一些数据,但我需要将它放入循环中并保存到完成。我不能像那样完成它,因为函数在内部回调运行之前就完成了。我可以让回调再次运行该函数,但它不会吃掉内存吗?或者它不会因为父函数完成并且内部变量和对象被破坏?

对不起我的英语不好。

4

1 回答 1

0

我如果理解正确,您有一个将回调传递给要在循环中重复的函数的过程,该循环会产生多个未完成的回调。

对此的解决方案是保留回调的计数并在调用每个回调时将其递减。一旦计数器达到零,就进行最后的处理。

小心将计数器从 1 开始,并在所有回调传递完后将其递减,以确保计数器不会过早达到零。

于 2012-04-05T22:18:04.600 回答