答案 0 :(得分:7)
Error
对象和特定错误对象(如TypeError
)在ECMAScript规范中完全标准化。但是,大多数浏览器都有这些对象的常见非标准属性。
只要您的错误处理代码知道如何处理您抛出的对象,您就可以抛出任何您喜欢的内容,但使用Error
对象有一些优势:
message
属性,因此您不必编写不同的代码来处理本机错误和您自己的错误; Error
个对象具有非常有用的非标准属性,例如fileName
,lineNumber
和stack
。您只能在Error
个对象上获取这些对象,它们对于调试非常有用。