jQuery の $.getJSON メソッドを使用してローカル JSON ファイルをロードしようとすると、データにアクセスできない問題が発生する可能性があります。この状況を修正する方法は次のとおりです。
$.getJSON メソッドは非同期です。つまり、コードの実行はブロックされません。これは、後続の行でデータにアクセスしようとしてもデータが利用できない可能性があることを意味します。
解決策:
これを処理するには、コールバックを提供する必要があります。 $.getJSON への引数として関数を使用し、JSON データがパラメーターとして渡されます。
$.getJSON("test.json", function(json) { console.log(json); // this will show the info it in firebug console });
このコールバックでは関数を使用すると、json パラメーターで表される JSON データにアクセスできます。これで、データをログに記録したり、必要に応じてデータを使用したりできます。
注:
eval 関数はセキュリティ上の脆弱性を引き起こす可能性があるため、使用しないでください。代わりに、ネイティブ JSON.parse 関数を使用して、JSON 文字列を JavaScript オブジェクトに解析することを検討してください。
以上がjQuery を使用してローカル JSON データを非同期的にロードしてアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。