私はjavascriptとjsonを使い始めたばかりです。
javascript 関数でイベントを処理するときに、json ファイルからデータ (getInformation 関数) を読み取る必要があります。だから私はそれが同期的である必要があります。コードに何かが欠けているのか、リクエストを作成してコールバックを処理する必要があるのか 、それともjsonを使用するために追加のjavascriptをインポートする必要があるのか わかりません。うまくいく方法がわからないからです。最後に配列が空であるため、機能しません。どんな助けでも感謝します。
json ファイル:
{"Users": [
{"Name": "Jane",
"Points": 67,
"age": 23},
{
"Name": "Sam",
"Points": 65,
"age": 21}
]}
オプション 1 - イベントを処理している別の関数によって呼び出される関数:
var getInformation = function()
{
var path = "./data/users.json";
var informationArray= [];
console.log("Loading ....");
$.getJSON(path, function(data)
{
$.each(data, function(key, val)
{
informationArray.push(key + '-' + val);
});
});
return informationArray;
}
オプション 2 - イベントを処理している別の関数によって呼び出される関数:
var getInformation = function() {
var path = "./data/users.json";
var informationArray= [];
$.ajax({
url: path,
async: false,
dataType: 'json',
success: function(response) {
$.each(response.items,
function(item) {
informationArray.push(item);
});
informationArray.push("success");
}
});
return informationArray; }
次のスレッドを見て、そこにあるものを試しましたが、うまくいきません。コードのどこに問題があるか、または特別な構成が必要かどうかを知りたいです。