自定义抛出exceptionjavascript的错误消息

我试图在javascript中自定义exception抛出的错误消息。

到目前为止,我的尝试都失败了。

我正在尝试这个,但它不起作用

function abc(sender, args) { alert("ex2"); throw ("error new"); alert(""); } 

您需要throwobject (使用名称消息属性)而不是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); }