throw和 new Error到底是什么?
首先看MDN
throw
语句用来抛出一个用户自定义的异常。当前函数的执行将被停止(throw
之后的语句将不会执行),并且控制将被传递到调用堆栈中的第一个 catch
块。如果调用者函数中没有 catch
块,程序将会终止。
说人话就是如果`throw`抛出一个异常,并且这个异常没有被`try catch捕获`的话,那么程序就会结束执行.
error
可以使用 error()
函数new处理一个实例对象,里边的内容就是自定义的错误内容
error对象的属性 | ||
---|---|---|
属性名 | 使用 | 值 |
fileName | 直接读取 | 文件名字(有兼容性) |
name | 直接读、写 | error实例对象的名字 |
message | 直接读、写 | 创建error实例对象时传入的message数据 |
还有一些属性可以看MDN: Error() constructor
throw和Error对象的区别在于?
Error可以实例化一个error对象,但是这个对象不会影响代码的执行,有自己的属性
throw 抛出一个错误 ,但是如果这个错误没有被try tatch捕获的话,那么就会阻止代码的执行