在JavaScript中使用变量作为函数参数

时间:2017-02-15 20:40:11

标签: javascript function naming-conventions

我有一个问题,更多的是关于最佳实践,而不是实际解决代码问题。我知道代码有效,我已经看到了其他语言的类似问题,但我想得到一个解决方案。

var parkRides = [["Birch Bumpers", 40] , ["Pines Plunge", 55] , ["cedar Coaster", 20] , ["Ferris Whell of Firs", 90]];
var fastPassQueue = ["Cedar Coaster","Pines Plunge","Birch Bumpers","Pines Plunge"];
var wantsRide = "Cedar Coaster";
function buildTicket (allRides, passRides, pick ) {
    if(passRides[0] == pick){
        var pass = passRides.shift();
        return function() {alert("Quick! You've got a Fast Pass to " + pass + "!");                          
    };
} else {
    for(var i = 0; i<allRides.length; i++){
        if(allRides[i][0] == pick){
            return function (){alert("A ticket is printing for " + pick + "!\n" + "Your wait time is about " + allRides[i][1] + " minutes.");
                };
            }
        }
    }
}

在上面的示例中,函数“buildTicket”包含3个参数;

  • allRides,它接受变量parkRides的值
  • passRides,它接受变量fastPassQueue的值
  • 选择获取变量wantRide的值

通过改变功能代码,我知道

var ticket = buildTicket(parkRides, fastPassQueue, wantsRide);

提供与

完全相同的结果
var ticket = buildticket(allRides, passRides,pick);

我的问题是一种方法是否优先于另一种方法?编写函数来直接使用变量名是否可以接受,或者在函数中为参数赋予不同的名称是否更好。

感谢。

0 个答案:

没有答案