throw new Error 是 js 的一种抛出异常的方式。
当程序执行到throw new Error语句的时候,会创建一个新的Error对象,并将其抛出。这个过程会中断当前函数的执行,并将控制权交给调用栈中的上一级函数。如果这个异常没有被上一级函数捕获并处理,它会一直向上抛出,直到被程序中某个地方处理或导致程序崩溃。
举一个使用 throw new Error() 的例子吧:
我们现在正在编写一个函数,它接收一个数字作为参数,并返回该数字的平方根。如果参数为负数,则抛出一个错误。
代码实现:
function squareRoot(num) { if(num < 0) { throw new Error("不能求负数的平方根"); } return Math.sqrt(num); }
在这个函数中,如果传入的参数是负数,就会抛出一个新的Error对象,并将其消息设置为「不能求负数的平方根」。如果没抛出异常,该函数将计算并返回传入参数的平方根。