私が欲しいのは、ある機能から取り出されたデータを別の機能に表示することです。私は、グローバル変数を使用すると、私はこれを達成することができると言われたWhat is the best way to store a value for use in a later function? I'm hearing global variables are evil。だから私はグローバル変数を使用しましたが、なぜこのコードは '未定義'のアラートを返しますか?
これは私が試みたものです。 http://jsfiddle.net/8j947/17/
アラートとしてグローバル変数を表示しようとすると、定義されていない状態に戻ります(jsfiddleでは表示されない可能性があります)。データが実際には格納されていないためだと思っていますが、私は3週間しかコーディングしていないので、何を知っていますか?もしあなたが私が間違っていたことを私に見せたり、素晴らしい解決策を提案したりして、あなたが私を助けてくれるかもしれません。
グローバル変数には何も問題はありません。すべてをグローバルにしないでください。 AJAXのAは "非同期"であることを覚えておいてください。これはあなたがリクエストしたことを意味し、結果は後でいつか戻ってきます。したがって、すぐに結果を確認すると、まだそこには存在しない可能性があります。 "コールバック"は、応答が来たときにそれを受け取る関数です。それが鍵です。 –
@Diodeus確かに(グローバル変数には何か問題があります)、避けてください。理想的には、あなたのアプリケーション/ Webサイト/会社/ ...を表すグローバル変数を 'YAHOO'や' StackOverflow'のように1つだけ使用し、それをあなたの名前空間として使うのが理想です。 –
@Davis jsFiddleデモの変数は、ページロードハンドラ内で宣言しているので、グローバル変数ではありません。 –