JavaScript:对传递给函数的变量使用相同的名称是一种好习惯吗?

时间:2013-12-11 16:17:18

标签: javascript naming-conventions naming conventions

我想这会出现很多。假设我有:

downloadData () {
    var myData = //do something ;
    displayData(myData);
}
displayData (myData) { //<--- is it bad practice to use same variable name myData? 
    //display data
}

在第二个函数displayData()中使用相同的变量名称或者我应该接受带有其他名称的myData(例如myDataToDisplay)是好的还是坏的做法(或者说并不重要)?这两个名字都告诉我var中的内容同样有效。

3 个答案:

答案 0 :(得分:3)

只要你在函数之外正确声明变量(即使用“var”),你就不应该有任何问题,这有助于使代码更容易阅读。

答案 1 :(得分:1)

当调用myData时,变量displayData与函数displayData的范围有关。所以这并不像你冒着任何名字冲突的可能性。

我对参数命名的一般经验法则是清晰度。所以是的,我认为在这种情况下使用相同名称的变量名称是完全正确的,因为它们准确地描述了传递的数据。

作为一个虽然实验,让假设我们有一个硬规则,说“你不应该在多个函数中使用相同的变量名”。如果您有多个函数调用相同的数据并且您正在链接调用,该怎么办?那看起来不太漂亮。

答案 2 :(得分:0)

在这种情况下它非常好,因为你正在使用两个不同的函数,这些变量的范围是不同的。虽然它取决于编码器的偏好,但我的建议是不要一次又一次地使用相同的名称来污染你的脚本。