JavaScript try/catch:错误或异常?

Jos*_*osh 11 javascript error-handling nomenclature

好.我可能在这里分裂头发,但我的代码不一致,我想这样做.但在此之前,我想确保我走的是正确的方式.在实践中这没关系,但这一直困扰我一段时间,所以我想我会问我的同龄人......

每次我使用try... catch语句时,在catch块中我总是将消息记录到我的内部控制台.但是我的日志消息不一致.他们看起来像:

catch(err) {
DFTools.console.log("someMethod caught an error: ",err.message);
...
Run Code Online (Sandbox Code Playgroud)

要么:

catch(ex) {
DFTools.console.log("someMethod caught an exception: ",ex.message);
...
Run Code Online (Sandbox Code Playgroud)

很明显,代码在任何一种方式下都能正常运行,但是我开始困扰我,有时候我会引用"错误",有时会引用"异常".就像我说的那样,也许我正在分裂头发,但这是正确的术语?"例外"或"错误"?

tlo*_*lin 11

这有点主观,但对我来说,错误是当某人或某事做错事,不当或无效时.它可能是语法错误,逻辑错误,读取错误,用户错误,甚至是社交错误.这是一个抽象的概念.

另一方面,异常是在代码中出现特定条件时创建和抛出的对象.它可能或可能不对应于概念错误.所以对我来说,正确的命名法是"例外".

  • 好.在与朋友讨论了这个话题之后,我正在认真考虑接受这个答案.这是我的想法.以你对@Pointy在评论中所说的话说:你可以"抛出"任何东西.无论什么"捕获"捕获都是例外.可能是异常是错误.因此,"例外"是正确的术语. (3认同)