在 JS 中,你可以抛出一个“new Error(message)”,但是如果你想检测异常的类型并对消息做一些不同的事情,那就不是那么容易了。
这篇文章: http ://www.nczonline.net/blog/2009/03/10/the-art-of-throwing-javascript-errors-part-2/
是说你可以这样做:
function MyError(message){
this.message=messsage;
this.name="MyError";
this.poo="poo";
}
MyError.prototype = new Error();
try{
alert("hello hal");
throw new MyError("wibble");
} catch (er) {
alert (er.poo); // undefined.
alert (er instanceof MyError); // false
alert (er.name); // ReferenceError.
}
但它不起作用(得到“未定义”和错误)
这甚至可能吗?