最佳答案
我有一些函数,它们要么返回一些东西,要么抛出一个错误。在 main 函数中,我调用其中的每个函数,并希望返回每个函数返回的值,或者在第一个函数抛出错误时继续执行第二个函数。
所以基本上我现在拥有的是:
function testAll() {
try { return func1(); } catch(e) {}
try { return func2(); } catch(e) {} // If func1 throws error, try func2
try { return func3(); } catch(e) {} // If func2 throws error, try func3
}
但实际上我想只返回 try
(即如果它没有抛出错误)。我不需要 catch
块。但是,像 try {}
这样的代码会失败,因为它缺少一个(未使用的) catch {}
块。
我把 JsFiddle 上的一个例子。
那么,有没有什么办法可以移除这些 catch
块,同时达到同样的效果呢?