ファイル json をロードし、questions という配列を作成する次のコードがあります。
getArray 関数内で console.log(JSON.stringify(questions)) を実行すると問題なく動作しますが、関数の外側で同じことを実行すると動作しません。alert
(JSON.stringify(questions)) で試しましたalert(questions.length) それは [] と 0 を返します。私の間違いはどこですか??
var questions = [];
function getArray(){
$.getJSON('questions.json', function (json) {
for (var key in json) {
if (json.hasOwnProperty(key)) {
var item = json[key];
questions.push({
Category: item.Category
});
}
}
//console.log(JSON.stringify(questions)); //it works
return questions;
});
}
$(document).ready(function(){
getArray();
});
alert(JSON.stringify(questions)) //return []
alert(questions.length) //return 0