【发布时间】:2011-08-05 02:31:51
【问题描述】:
有人警告我,这篇文章可能过于主观,但我只编程了几个星期,所以我想知道。
到目前为止,我一直在我的 JS 中使用 try/catch 语句来防止在运行函数时未定义变量的情况下引发错误,但这是唯一有效的方法吗?
【问题讨论】:
-
最好弄清楚错误发生的原因。然后阻止错误发生。随着代码的增长,您会产生很多麻烦。
-
您可能应该尝试编写您的代码,以便您确信在使用它之前定义了一个变量,但如果您不能,那么可能比 try/catch 更好的选择是检查如果变量存在,例如
if (x) { }或if (typeof(x) != "undefined") { } -
undefined是变量具有的有效值,而不是自动错误条件。像其他人建议的那样使用if声明。我不知道我是否会使用“从不”这个词,但我会说使用try/catch用于此目的几乎绝不是一个好主意。即使除了执行速度问题(您可能关心也可能不关心)try/catch合并到您的代码中要笨重得多。
标签: javascript methods methodology