Javascript 抛出但未处理的异常会发生什么情况?

Javascript 抛出但未处理的异常会发生什么情况?,javascript,throw,Javascript,Throw,当我用谷歌搜索throw做什么时,我得到的答案是它抛出了一个异常。哇!那对我来说毫无意义 由于stackoverflow,我已经了解到它会抛出错误,直到最近的处理程序处理它为止 这方面已经有一个问题了,但它根本没有回答我的问题。如果你不处理它,它会是什么样子?它会提醒用户吗?它是否只显示在控制台中?它是否击中了我家附近的人,导致他们在凌晨3点敲我的门 有人能不能把它分解一下,这样我就可以用现实世界的类比来想象它。就像一个例外,就像把垃圾放进一个袋子,如果没有人捡起来,就放在人行道上捡。。。。我不

当我用谷歌搜索throw做什么时,我得到的答案是它抛出了一个异常。哇!那对我来说毫无意义


由于stackoverflow,我已经了解到它会抛出错误,直到最近的处理程序处理它为止

这方面已经有一个问题了,但它根本没有回答我的问题。如果你不处理它,它会是什么样子?它会提醒用户吗?它是否只显示在控制台中?它是否击中了我家附近的人,导致他们在凌晨3点敲我的门

有人能不能把它分解一下,这样我就可以用现实世界的类比来想象它。就像一个例外,就像把垃圾放进一个袋子,如果没有人捡起来,就放在人行道上捡。。。。我不知道。请帮我解释一下。

答案只是“视情况而定”。该实现定义了用户代码未捕获的异常发生的情况。我所知道的所有浏览器都会将其登录到控制台并停止执行该脚本或函数,否则页面将正常工作。Node.js将把错误打印到STDERR,并使用非零退出代码终止进程

在这两种情况下,异常仍然由执行用户代码的进程“处理”。

我个人喜欢:

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

链接文档中还有一些示例,可以帮助您更好地理解
throw

要回答这个问题:

如果你不处理它,它会是什么样子?它会提醒用户吗?它是否只显示在控制台中

答案是“是”,它确实会出现在您的控制台中。通常为亮红色,带有错误堆栈,显示抛出的位置

console.log(“你好”);
抛出“示例错误”;//在浏览器的JavaScript控制台中也可见

console.log(“世界!”)“它会抛出错误,直到最近的处理程序对其进行处理”您还想知道什么?这只是一个信息。你可以用它做点什么,也可以忽略它。你是什么意思?我还想知道什么?我想知道它是否可见。它看起来像什么。你刚才说的就像对一个盲人说,“照亮道路。”谢谢。这也有帮助。