T.R*_*.R. 29 javascript exception
w3schools说异常可以是字符串,整数,布尔值或对象,但是给出的例子并没有让我觉得好,因为异常类型检查是通过字符串比较完成的.这是JavaScript中首选的异常处理方法吗?是否有内置的异常类型(如NullPointerException)?(如果是这样,他们是什么,他们使用什么样的继承,他们比其他选择更受欢迎?)
bob*_*nce 12
例外可以是你喜欢的任何事情.
在其他语言中,异常应该是实例,然后catch语句选择要捕获的异常以及实例的类通过哪些异常.
但是,JavaScript没有此功能.您只能捕获所有异常,然后查看该值以决定如何处理它.如果您不想处理异常,则必须手动重新抛出捕获的值.(这不可避免地使catch陈述相当混乱.)
您可以决定将异常实现为对象并与之进行比较instanceof.或者您可以使用唯一的不透明值进行比较.或者,如果你真的想要,你甚至可以扔直线或数字.
是否有内置的异常类型(如NullPointerException)?
的种类.ECMAScript中定义了一些标准的错误类:Error和它的亚型EvalError,RangeError,ReferenceError,SyntaxError,TypeError,URIError.但是有浏览器实现问题,例如在IE下try { nonexistentvar; }给出TypeError而不是ReferenceError.还有许多其他特定于浏览器的异常,特别是在处理DOM时.
直接使用这些对象并不常见,并且尝试将它们子类化是混乱的(因为JavaScript没有这样的类系统).您可能倾向于坚持使用您自己定义的例外来代替您自己的应用程序.例外并不是JavaScript中广泛使用的.