自定义抛出exceptionjavascript的错误消息
我试图在javascript中自定义exception抛出的错误消息。
到目前为止,我的尝试都失败了。
我正在尝试这个,但它不起作用
function abc(sender, args) { alert("ex2"); throw ("error new"); alert(""); }
您需要throw
和object
(使用名称和消息属性)而不是string
来生成自定义exception
:
function abc(sender, args) { alert('ex2'); throw { name: 'YourErrorName', message: 'YourErrorMessage' }; alert(''); }
以下是如何引发事件并捕获包含您的名称和消息值的exception
的示例:
function triggerError(){ throw { name: 'YourErrorName', message: 'YourErrorMessage' }; }; (function cathError(){ try { triggerError(); } catch(e){ console.log(e.message); console.log(e.name); } }());
看看这个codepen看它是否有效。
我对这个简单的代码运气不错:
throw new Error("Something terrible has happened");
当您只是抛出一个字符串时,您将失去错误堆栈等function。 在调用堆栈的某个地方,您可能想要执行以下操作:
catch(err) { console.log(err.stack); alert(err.message); }