应该在JavaScript中抛出什么类型的异常?

时间:2010-11-08 12:23:44

标签: javascript exception throw

JavaScript应该抛出什么类型的对象?

我看到很多examples抛出一个普通的string,似乎有一个半标准的Error类型。我应该更喜欢一个吗?

1 个答案:

答案 0 :(得分:7)

Error对象和特定错误对象(如TypeError)在ECMAScript规范中完全标准化。但是,大多数浏览器都有这些对象的常见非标准属性。

只要您的错误处理代码知道如何处理您抛出的对象,您就可以抛出任何您喜欢的内容,但使用Error对象有一些优势:

  • 与处理本机代码引发的错误的一致性,例如具有message属性,因此您不必编写不同的代码来处理本机错误和您自己的错误;
  • Mozilla和其他浏览器中的
  • Error个对象具有非常有用的非标准属性,例如fileNamelineNumberstack。您只能在Error个对象上获取这些对象,它们对于调试非常有用。