Javascript 如何理解回调源?

Javascript 如何理解回调源?,javascript,debugging,callback,Javascript,Debugging,Callback,我有js函数renderTerminalsOnMap。 此函数作为回调调用 代码如下所示: $.getJSON('getTerminalinsideRectangle.json', { northEastLat : map.getBounds().getNorthEast().lat(), northEastLng : map.getBounds().getNorthEast().lng(), so

我有js函数renderTerminalsOnMap。 此函数作为回调调用

代码如下所示:

 $.getJSON('getTerminalinsideRectangle.json', {
                northEastLat : map.getBounds().getNorthEast().lat(),
                northEastLng : map.getBounds().getNorthEast().lng(),
                southWestLat : map.getBounds().getSouthWest().lat(),
                southWestLng : map.getBounds().getSouthWest().lng()
            }, renderTerminalsOnMap)
在调试中,我想了解哪个事件是renderTerminalsOnMap调用的原因。 在callStack中,我没有看到此信息

我使用谷歌浏览器进行调试


请帮我找出答案。

所以您需要$getJSON调用的调用堆栈,对吗?如果是,并且您可以修改源代码,则可以存储堆栈跟踪,并在调用实际渲染时显示它,如:

var obj = {stack: {}};
Error.captureStackTrace && Error.captureStackTrace(obj, getStackTrace);

$.getJSON(....,
    function() {
        window.console.info(obj);
        renderTerminalsOnMap(arguments);
    });

应该在Chrome中工作,不知道其他浏览器。

我也有不同的函数,它们将此函数用作回调函数。是的,所以您需要在所有位置添加相同的代码,如果您需要知道哪个函数注册了此回调函数,我没有此信息,很遗憾,您可以在源代码中搜索函数名,还有其他方法吗?我不喜欢这个