我正在尝试解析 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);
};