有没有办法获得JavaScript的执行顺序以进行调试

时间:2013-02-14 09:58:14

标签: javascript jquery

我有很多异步函数的问题,我想知道是否有任何工具可以显示我的脚本运行后的执行顺序(不停止它)。我有Firebug,但我没有看到这样做的选项。

我正在寻找的原因是我在.done() .get()为我的{{1}}调用了一个回调,但由于某些原因它有时会失败,所以我试图找出这种情况究竟发生了什么

这不是我问如何解决异步问题(虽然建议是受欢迎的)但更多我想学习如何自己跟踪它。任何建议或链接到工具/教程非常欢迎

1 个答案:

答案 0 :(得分:3)

你职能上的

console.log('myFunctionName')。您还可以记录变量,仔细检查其内容是否正确。

基本上是这样的:

var myInt = 0;

function init(){
    console.log('init()')
    stepOne();
    myInt = 10
    console.log('Between steps')
    stepTwo();
    // more stuff;
    console.log('init() end');
}

function stepOne(){
    console.log('stepOne()', myInt);
    // Do stuff
    console.log('stepOne() end', myInt);
}

function stepTwo(){
    console.log('stepTwo()', myInt);
    // Do stuff
    console.log('stepTwo() end', myInt);
}

等等...

如果您在日志中看到类似的内容,请在运行init()

init()
stepOne() 0
stepOne() end 0
Between steps
stepTwo() 10

然后,这意味着您的代码在stepTwo()中突破。