我有一个函数,其输入参数如下:
function a(s,d,f,r,g,h,u)
我想将所有输入参数合并到一个对象中并将其传递给函数。我必须编写一个set函数而不是使用选项。对此有任何想法都会非常有用。
答案 0 :(得分:1)
使用数组:[s,d,f,r,g,h,u]
或制作一个对象:{s: s,d: d,f: f,r: r,g: g,h: h,u: u}
function a(obj)
{
...
}
在您的函数中,您可以通过以下方式访问数组的成员:
obj[number]
例如obj[0]
为s
,obj[3]
为r
如果你需要制作一个对象,你只需要写obj.name
来访问这些元素
例如obj.d
将是d
,obj.h
将是h
答案 1 :(得分:0)
如果要将一个参数传递给函数,请使用
function fn(arr) { }
var arr = [s,d,f,r,g,h,u];
fn(arr);
或者,如果要传递相同数量的参数但仍然使用一个变量,则使用
function fn (s,d,f,r,g,h,u) { }
var arr = [s,d,f,r,g,h,u];
fn.call(null, arr);
fn.call
它将传递数组的元素作为函数的参数
答案 2 :(得分:0)
您可以创建一个输入参数数组,并可以传递给函数
var array = new Array()
array[0] = parameter1
array[1] = parameter2
功能(阵列){
//像array [0]
一样使用参数}
答案 3 :(得分:0)
...而不是传递您将创建的对象,您可以使用所有函数可用的默认arguments
参数,并从那里开始。
function a(){alert(arguments.length)}
a(1,2); // alerts 2
a(1,2,3); // alerts 3
a(1); // alerts 1
希望这有帮助。