Javascript 为什么抛出错误对象而不是其他对象?

Javascript 为什么抛出错误对象而不是其他对象?,javascript,exception,error-handling,Javascript,Exception,Error Handling,Mozilla对此的解释是,throw接受表达式。通常情况下,您会看到在异常情况下抛出对象,因此我想知道抛出其他对象(如字符串或数字)而不是错误对象是否有任何缺点。这不是一个具体的答案,但是,如果有一个标准对象,您知道它将包含某些属性,例如message,那么这种方法既方便又一致,从而使应用程序的其余部分更容易做出相应的响应 此外,如果这些错误冒泡到顶部而未被捕获,则可以使用类似于Loggly(或类似)的服务在异地记录这些错误,标准错误对象使此类服务更容易为您创建有意义的数据提供更准确的错误描述

Mozilla对此的解释是,
throw
接受表达式。通常情况下,您会看到在异常情况下抛出对象,因此我想知道抛出其他对象(如字符串或数字)而不是错误对象是否有任何缺点。

这不是一个具体的答案,但是,如果有一个标准对象,您知道它将包含某些属性,例如
message
,那么这种方法既方便又一致,从而使应用程序的其余部分更容易做出相应的响应


此外,如果这些错误冒泡到顶部而未被捕获,则可以使用类似于Loggly(或类似)的服务在异地记录这些错误,标准错误对象使此类服务更容易为您创建有意义的数据

提供更准确的错误描述。如果抛出一个错误对象,它会在客户端控制台中显示为一个错误。这完全取决于您希望如何处理抛出的错误。抛出一个字符串(任何非错误对象)仍会在客户端控制台中显示一个错误:好的,这基本上是标准化的,如果您希望其他人与错误交互,它会很有用,如果我理解正确的话,可能有很多原因,但标准化对我来说是个大问题。这是一个有趣的问题!因为不管怎样,仍然会得到堆栈跟踪和错误输出。所以,是的,我相信标准化是关键