2013-07-31 99 views
1

的功能提供多个参数,我想提供多个参数给JavaScript函数,以及关于传入的参数也有清晰,所以具有此功能的清晰的在Javascript

var callMe = function (param1, param2, param3) { 
    console.log(param1 + ", " + param2 + ", " + param3) 
} 

我会调用该方法呼我()这样的,铭记该参数初始化值是本身的价值:

callMe(param1 = 1, param2 = 2, param3 = 3) 

我的目标是提供多个参数时,以避免混乱有透明度。

上面的例子中是否有任何负面影响,或者可能是我只是试图重新发明轮子?

+1

命名,因为其名称的匿名函数没有意义不能被用于任何东西,可能会导致混乱的思维,你可以打电话的地方'呼我'当你真的不能。我想它提供了一个标签,但是再次你应该为你的功能命名,而不仅仅是一些毫无意义的字母等。 –

+0

我同意,修复功能 –

回答

2

如果你没有用var提前声明你的参数,你会引入像疯狂的全局变量。我可以想象它会非常迅速地变得非常草率。而不是这样做,请使用配置对象作为参数。虽然它有它自己的缺点,但你实质上是在做同样的事情,而不是像你说的那样包装参数,重新发明轮子。所以..

var f = function (config) { 
    console.log(config.param1 + ", " + config.param2 + ", " + config.param3); 
} 

f({ 
    param1: "Foo", 
    param2: "Bar", 
    param3: "Baz" 
}); 
+0

好,配置对象会有所帮助,谢谢。 –

-1

使用此:

var callMe = { 
       param1:1, 
       param2:2, 
       param3:3 
};