在JavaScript方法中抛出InvalidArgumentException,就像在Java或类似语言中一样。
我一直在努力熟悉JavaSctipt错误处理,我知道我可以使用throw
关键字抛出异常。
为实现这一目标,我还阅读了throw documentation on MDN和Error documentation on MDN。
到目前为止,这是我的代码:
if (mySize >= myArray.length)
throw new Error("InvalidArgumentExcpetion - BANG!!!!");
此代码对我有一些问题:
所以现在我很困惑。
答案 0 :(得分:7)
经过研究,我现在已经找到了我喜欢的解决方案。对Toan的特别赞誉,我很乐意选择他的答案,但既然我觉得它仍然有点不完整,我决定用我自己的发现创建我自己的答案。希望它可以帮助别人!
使用Toan提出的解决方案:https://stackoverflow.com/a/38146237/1337392
这是可能的,虽然如果你想要自定义,你需要创建自己的对象。
感谢所有帮助人员! kudos ++ for all!
答案 1 :(得分:4)
我一直在努力熟悉JavaSctipt [ sic ]错误处理,我知道我可以抛出异常[....]但是明天我可能想要BONG [....]
如果他们更有意义,你可以抛出TypeError
或SyntaxError
。但不需要过于花哨。只需向Error
添加一条消息,就好像您已经在做的那样:
if (myArray && myArray.length < mySize) throw new Error('`mySize` must be larger');
如果明天你决定要BONG:
if (!myBong) throw new Error('Officer, that is not `myBong`');
有关内置错误类型read the docs的更多信息。
答案 2 :(得分:1)
请参阅以下答案:
let errors = {
invalidOperation: 'Invalid operation',
unAuthorized: 'You are not authorized to use this function',
}
并使用它们而不是像
这样的硬编码字符串throw new InvalidOperationException(errors.invalidOperation);