JSONを解析しようとしています。私は使っている
$getJSON
ファイルを取得し、その内容を変数に保存するには
JSONfile
、これを解析関数に渡しますが、getJSON関数の外側にはnullが含まれており、その内側には適切なデータが含まれているとはいえ、変数
JSONfile
グローバルに宣言されています(そうだと思います)。私はJavascriptの初心者です。ここで何が起こっているのかを説明するか、似たようなことを教えてください (自分自身を見つけることができませんでした)。
var atlasJSON = "http://127.0.0.1:8000/sprites/SPRITE.json";
var JSONfile = null;
function setup(){
body = document.getElementById('body');
canvas = document.createElement('canvas');
spriteManager = new SpriteSheetClass();
spriteManager.load(spritesheet);
$.getJSON(atlasJSON, function(data) {
JSONfile = data;
console.log(JSONfile); // JSON file content is here
});
console.log(JSONfile); // null !!!
debugger;
spriteManager.parseAtlasDefinition(JSONfile);
for(var i=0; i<spriteManager.sprites.length ; i++){
console.log(spriteManager.sprites[i]);
}
//canvas = document.getElementById('canvas');
ctx = canvas.getContext('2d');
canvas.setAttribute('width', 1024);
canvas.setAttribute('height',800);
body.appendChild(canvas);
};