我从我的方法中抛出一个Error
,我希望提前退出,如下所示:
// No route found
if(null === nextRoute) {
throw new Error('BAD_ROUTE');
}
我是否需要在return;
之后加上throw
声明?它现在对我有用。如果它是多余的我宁愿不把它放进去,但我不能确定不同的浏览器会做什么。
答案 0 :(得分:123)
您不需要在return
之后添加throw
语句,永远不会达到return
行,因为抛出异常会立即将控制权交还给来电者。
答案 1 :(得分:0)
throw 语句抛出用户定义的异常。 当前函数的执行将停止(不会执行 throw 之后的语句),并将控制权传递给调用堆栈中的第一个 catch 块。如果调用者函数之间不存在 catch 块,则程序将终止。