私のコードでは、オブジェクトメソッドをコールバックし、そのコールバックからデータを取り出し、別のメソッドまたは関数に渡す必要があります。javascriptオブジェクトメソッドコールバックから変数を取得
someObject.getSomeData({option1:'value1', option2:'value2'},
function(data) {
doAwesomeStuff(data);
}
);
ただし、コールバックはスコープ外の関数/オブジェクト/変数を認識しません。
今私がしようとしたことは、関数のすべてをラップすることです。
var myData = '';
(function(myData) {
someObject.getSomeData({option1:'value1', option2:'value2'},
function(data) {
myData = data;
}
);
});
doAwesomeStuff(myData);
しかし、これはうまくいきません。
これを正しく行う方法を知っている人はいますか?
"範囲外"と言ってどの変数を参照していますか? – pimvdb
>ただし、コールバックはスコープ外の >関数/オブジェクト/変数を認識しません。それはちょっと変わったようです... doAwesomeStuff()はどこに定義されていますか? あなたの電話がかけられている範囲(またはより広い範囲)にある場合は、それは到達可能でなければなりません。 – mamoo
実際に定義されて実行されましたが、これはnodejsにあり、データ処理を行っていました。実行されたことを確認するconsole.outステートメントがあるうちに、他の出力に失われたようです。私は質問を掲示して急いでいるように見えます、私は学校でそれをしました、私は家に帰るとすぐにそれを理解し、それを新鮮に見ました。あなたの助けてくれてありがとう、私は削除や何かのためにフラグを立てます:) –