javascript在ECMAScript3中引入了try catch finally机制,大致原理和其他语言一样。
我们也可以自定义错误事件。
但是事先声明:我们自定义的错误事件,只支持对name、description、message、number。其中name和message就是我们在错误事件throw后被catch住之后能够看到的。
function abc(num) { if (i instanceof Number) { num = 100; } else { var oe = new Error(); oe.description='你你好好看看你传的是啥!'; oe.message='你要传数字'; oe.name='数传错了!!'; oe.number=36; throw oe; } return num; }; (function () { try{ alert(abc('a')); } catch(oe){ alert(oe);//显示 数传错了!!你丫要传数字 } })();
而且catch到的oe中对于ECMAScript对错误事件对象定义的其他方法和属性全都不支持。输出只能输出undefined!