3

在我正在开发的现有 Backbone/jQuery/CoffeeScript 应用程序中,似乎有一个函数 ( Backbone.Collection.fetch()) 被多次调用(有时数字可能会有所不同)。我认为这可能是一个时间问题,因为我正在做很多嵌套回调(如 AJAX 等)并且它变得难以调试。我可能应该尝试将代码转换为使用 jQuery deferred 但与此同时,我能做什么?

刚刚尝试在 Chrome 中浏览代码,但似乎代码在这里和那里跳跃,也许它同时处理不同的回调?

我在想也许我在每个函数 + 它的参数中添加了一个 console.log,但一定有更好的方法吗?

4

1 回答 1

2

您可以向该fetch()函数添加堆栈跟踪,并查看从何处调用它。JS 有许多不错的堆栈跟踪实现。我在 Eric Wendelin 的版本上取得了很大的成功,但还有很多其他版本。

通过堆栈跟踪,也许您至少可以看到该函数最常见的路径,这可能有助于缩小搜索范围。它甚至可以弄清楚潜在的罪魁祸首。

于 2012-07-10T02:44:26.863 回答