2

非同期関数に多くの問題があり、実行後にスクリプトの実行順序を (停止せずに) 表示するツールがあるかどうか疑問に思っていました。Firebug がありますが、これを行うオプションが表示されません。

私がこれを探している理由は、コールバックが呼び出されている.done()ためです.get()が、何らかの理由で失敗することがあるため、正確にこれがどこで発生しているかを追跡しようとしています。

これは私が非同期の問題を解決する方法を尋ねているわけではありませんが (提案は大歓迎です)、それを自分で追跡する方法を学びたいと思っています。アドバイスやツール/チュートリアルへのリンクは大歓迎です

4

1 に答える 1

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().

于 2013-02-14T10:07:01.490 に答える