【问题标题】:Is There Anything Wrong With Parameters & Arguments Having The Same Name同名的参数和参数有什么问题吗
【发布时间】:2017-06-21 23:52:24
【问题描述】:

我经常看到函数的参数和参数名称不同。

我想知道以下有什么问题:

// aFunc takes two variables 'first' & 'second'
var aFunc = function( first, second ){
 ...
}

var first = "first",
    second = "second";

aFunc( first, second );

是否有原因,传递给函数的参数和参数不应同名?

【问题讨论】:

  • 没有错,只是偏好问题。
  • 这取决于上下文和偏好。通常最好采用读者最清楚的方式。
  • 函数的全部意义在于你可以用不同的参数调用它们,所以虽然偶尔会发生你传入的变量与参数名称相同的情况,但通常情况并非如此。

标签: javascript variables parameters arguments


【解决方案1】:

技术上没有错。在大多数情况下,编译器或解释器会将您的参数和变量名称重命名为短名称(a、b、c)。注意范围。

外卖的想法是试图传达您命名的含义和信息。

有时它会有意义或传达信息以区分声明中的参数名称。

例如:

// aFunc takes 3 variables, the name should speak for itself.
var aFunc = function( maximum, minimum, average ){
 ...
}

aFunc( localMinimum, localMaximum, localAverage );
aFunc( weekMin, weekMax, weekAverage );
aFunc( allTimeMin, allTimeMax, allTimeAverage );

在该示例中,很清楚我传递给 aFunc 函数的最大值、最小值和平均值的类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-16
    • 2019-12-25
    • 1970-01-01
    • 2016-07-18
    • 1970-01-01
    • 2016-01-09
    • 2010-09-14
    相关资源
    最近更新 更多