繁体   English   中英

将值分配给函数的隐式声明的局部变量被认为是不好的做法?

[英]It is considered bad practice to assign a value to an implicitly declared local variable of a function?

问题:将值分配给函数的隐式声明的局部变量被认为是不好的做法? 如果是这样,分配一个隐式声明的局部变量的最佳方法是什么

function foo(baz) {
  baz = 3;  //this is implicitly declared by the function's argument baz


}
foo()

我不会说这是一种不好的做法(因为有害),只是不是一种好的做法。 一个有益的效果是将代码长度减少了4个字符,因为它代替了函数中的变量声明。 这仅适用于第一个变量,此后没有任何好处,如果声明了其他变量,则有零好处。

但是,代码的可读性受到影响,并且不必要地混淆了函数签名,例如

function foo(bar) {
  /* some code */
}

使用户想知道应该传递给bar的内容,而:

function foo() {
  var bar;
  /* some code */
}

明确表明foo不接受任何参数。

形式参数在声明之前进行处理,但是我看不到任何好处或副作用。

我认为这没什么用。 因为传递的值无关紧要,所以只要用您想要的值覆盖它即可。 因此,这不是一个坏习惯,只是一个无用的功能。 请不要冒犯。

那使我想起:

function random_number() {
    return 7;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM