1

所以...我最近开始通过 JSHint 运行我的代码,它抱怨以下内容:

function myfunc(config){
    var config = Ext.apply({},config,{});
    //Ext.apply is used as a deep object clone, to check for defaults ,  
    //typeof config !==null, etc 
}

'var 配置已定义'

我有点认为它只是工作,到目前为止还没有真正遇到任何问题。

重新声明这样的变量有什么问题?(如果你知道怎么做,我如何禁用 JSHint 中的警告?)

4

2 回答 2

0

只是说config已经声明了,因此您应该删除它,var因为它没用。这就像卖你的车来买同一辆车。

于 2012-05-28T11:12:22.920 回答
0

var config引入了一个新的局部作用域变量,它可以从外部作用域隐藏任何同名变量。在您的情况下,您在已定义的同一范围内重新声明变量,因此它实际上可以按预期工作,但您不需要var声明,因为config已经在本地范围内。

于 2012-05-28T11:12:59.177 回答