我的尝试中有一个$.getJSON()
调用正在抛出错误,但是没有触发捕获。什么都没发生。只是控制台中的错误。
为什么会这样?
我尝试做的是在加载JSON时执行某些操作,如果请求中出现故障或错误,则执行其他操作。
这是我的代码:
try{
$.getJSON('https://www.googleapis.com/freebase/v1/search?query=&filter=(all+type%3A%22nominated%20works+exhibited_at%3A%222012%20grammy%27s%22)&indent=true', function(searchJSON){
alert('sucesss!');
});
}
catch(e){
alert('failure: '+e);
}
以下是jsfiddle的链接:http://jsfiddle.net/sgeg56c3/
答案 0 :(得分:2)
您的回调函数是异步的,而您的try / catch块是同步的。当您的异步回调完成时,try / catch块可能已经完成。
由于异步是同步处理的,因此您需要使用不同的方法进行错误处理。