考虑下面的代码:声明变量,如果和使用外
var factory = function(someCondition) {
var para1 = 'some value';
if(someCondition)
var para2 = 'some other value';
return new MyClass(para1, para2);
}
我知道这个代码是perfectly legal,即使para2
声明的if
内部,而是外部使用。
我的问题是:这是 - 虽然合法 - 由主要的JavaScript风格指南认为是不好的风格?如果是这样,通过哪些方法以及建议的替代方案?
只是要清楚:我知道关于提升和变量不是作用域而是函数作用域的事实。
关于近距离投票:我将其改述。它不再基于你的意见。 – 2014-08-30 08:16:57
我看到并收回了我的投票。做得好。 – 2014-08-30 08:17:20
@FrédéricHamidi:感谢您帮助我更好地提出问题:) – 2014-08-30 08:18:06