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

Mot*_*tti 6 javascript exception throw

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

我看到很多例子都是一个普通的旧版本string,似乎有一种半标准的Error类型.我应该更喜欢一个吗?

Tim*_*own 7

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

你可以抛出任何你喜欢的东西,只要你的错误处理代码知道如何处理你抛出的对象,但使用Error对象有好处:

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