2013-07-26 24 views
0

比方说,我有以下的JavaScript代码在我的项目:声纳违反周围的JavaScript参数对象使用

function foo(){ 
    console.log(arguments);   
} 

当我碰到这样的声纳JavaScript的插件,它注册了以下错误:

"eval" and "arguments" must not be bound or assigned

任何想法为什么?我知道这个错误应该只发生在arguments被分配给一个变量,或者它被用作参数名称,但在这里也不是这种情况。

+0

也许你应该报告错误或切换到另一个代码质量管理平台。 –

回答

1

声纳中规则的描述非常清楚地解释它:“参数”是一个隐式变量,它允许访问函数的参数,并且这是一个索引属性。所以这不太可能是你想传递这个变量,就像你显示的那样(它看起来只是一个调试代码),而且大部分时间都应该引起注意(只有技术JS栈/框架应该这样做) 。