当JSON.Parse()解析文件中的所有对象时,有没有办法使用事件来调用函数?
答案 0 :(得分:2)
JSON.parse
是同步的。它返回与给定JSON文本对应的对象。
有关mozilla
的更多信息现在一个做JSON.parse的好方法如下所示(在try-catch中)
try {
var data = JSON.parse(string);
//data is the object,
//convert to object is completed here. you can call a function here passing created object
}
catch (err) {
//mark this error ?
}
现在有讨论,为什么JSON.parse
不是异步,例如ONE HERE
答案 1 :(得分:0)
编辑:问题已经改变。
JSON.parse()是一种同步方法,这意味着一旦它被调用,它将在代码执行继续之前完全执行。
var obj= JSON.parse(jsonString);
obj.prop; // obj is already accessible.
JSON.parse,实际上并没有加载任何文件。它也是同步的,这意味着代码执行在完成它的功能(即将有效的JSON字符串解析为JavaScript对象)后恢复。
如果要在加载文件后执行回调,则需要查看请求,并且ajax要更精确。这是一个使用jQuery的简单示例。
$.ajax({
url: 'url/to/file.json',
dataType: 'json'
}).done(yourCallback);