我是否需要在“丢入”JavaScript 之后“返回”?

我抛出了一个 Error从我的方法,我想早点退出,如下所示:

// No route found
if(null === nextRoute) {
throw new Error('BAD_ROUTE');
}

我需要在我的 throw之后放一个 return;语句吗?目前来说,对我有用。如果它是多余的,我宁愿不把它放进去,但我不能确定不同的浏览器会做什么。

42856 次浏览

你不需要把 return语句放在 throw之后,return线永远不会到达,因为抛出异常立即将控制权交还给调用者。

Throw 语句引发用户定义的异常。执行 当前函数将停止(抛出后的语句将不会执行) ,控制将传递给调用堆栈中的第一个 catch 块。如果调用方函数之间不存在 catch 块,则程序将终止。