我们如何在JavaScript中引发并捕获RangeError,ReferenceError,TypeError?

我想知道是否有人尝试使用JavaScript的异常处理机制来捕获诸如RangeError,ReferenceError和TypeError之类的错误?

例如RangeError:

try {
var anArray = new Array(-1); 
// an array length must be positive

         throw new RangeError("must be positive!")
}
catch (error) {  
         alert(error.message);
         alert(error.name);
}
finally {
         alert("ok, all is done!");
}

在上述情况下,我是否要抛出新的RangeError对象?

Cos我在alert(error.message)处的代码示例未显示用户定义的消息“必须为正”.

我该怎么办才能引发我自己的RangeError对象(以及ReferenceError,TypeError)?

最好.

解决方法:

这已经快一年了,但我认为迟到总比没有好.它取决于浏览器,但是在某些情况下(咳嗽,咳嗽,FIREfox,咳嗽),RangeError继承了Error对象的message属性,而不是提供它自己的.恐怕唯一的解决方法是抛出新的Error(“必须为正!”).抱歉.

上一篇:javascript-未捕获的ReferenceError :(函数)未在HTMLButtonElement.onclick中定义


下一篇:javascript-野生动物园ReferenceError:找不到变量