在我正在开发的一个现有的Backbone/jQuery/CoffeeScript应用程序中,似乎有一个函数(Backbone.Collection.fetch())被多次调用(有时数字可能会有所不同)。我认为这可能是一个时机问题,因为我正在做大量的嵌套回调(如AJAX等),并且它变得很难调试。我可能应该尝试将代码转换为使用jQuery延迟,但同时,我该怎么办?
我刚试着在Chrome中遍历代码,但代码似乎到处跳跃,也许它同时处理不同的回调?
我在想,也许我可以给每个函数+它的参数添加一个console.log,但肯定有更好的方法?
发布于 2012-07-10 10:44:27
您可以向该fetch()函数添加堆栈跟踪,并查看从何处调用它。JS有许多像样的堆栈跟踪实现。我在Eric Wendelin's version上取得了很好的成功,但也有plenty of others。
使用堆栈跟踪,也许您至少可以看到进入该函数的最常见路径,这可能有助于缩小搜索范围。它甚至可能弄清楚潜在的罪魁祸首。
https://stackoverflow.com/questions/11405545
复制相似问题