【发布时间】:2023-08-22 16:03:02
【问题描述】:
当我没有声明 catch 用来存储错误的变量时,JSHint 给我以下错误
function foo (){
try{
let a = 0/0;
} catch (e){
console.log (e);
}
}
error| 'e' is not defined
当我定义它时,我会得到这个错误
function foo (){
let e;
try{
let a = 0/0;
} catch (e){
console.log (e);
}
}
error| Value of 'e' may be overwritten in IE8 and earlier
是否有声明e 的最佳实践方式?如果没有,我该如何抑制这个 JSHint 错误?
【问题讨论】:
-
我将您的代码粘贴到 jshint.com,它没有抱怨
e。 -
@Barmar 这是我的错,在
catch之外声明了一个e,但我没有注意到它。我将把它留给 * 大神来决定是否关闭这个问题 -
如果这不是您有疑问的代码,那么您应该删除它。
-
删除问题,因为它不是真正的问题,只是一个错字。
-
@Barmar,您无法删除此问题,因为其他人已投入时间和精力来回答它。如需更多信息,请访问帮助中心。
标签: javascript try-catch jslint jshint variable-declaration