11
尝试在JavaScript中{}不能捕获{}吗?
我有很多函数,它们要么返回值,要么抛出错误。在主函数中,我分别调用它们,并想返回每个函数返回的值,或者如果第一个函数抛出错误,则继续执行第二个函数。 所以基本上我目前拥有的是: 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在达到相同效果的同时移除那些障碍?