0

我有一个函数,它的输入参数如下:

function a(s,d,f,r,g,h,u)

我想将所有输入参数组合成一个对象并将其传递给函数。我必须编写一个集合函数而不是使用选项。任何关于此的想法都会非常有帮助。

4

4 回答 4

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]将是sobj[3]将是r

如果您需要创建一个对象,您可以访问刚刚编写的元素,obj.name
例如obj.d将是d并且obj.h将是h

于 2013-03-04T07:58:31.693 回答
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它将数组的元素作为函数的参数传递

于 2013-03-04T08:04:57.743 回答
0

您可以创建一个输入参数数组并可以传递给函数

var array = new Array()
array[0] = parameter1
array[1] = parameter2

函数(数组){

//在这里使用参数,如array[0]

}

于 2013-03-04T08:07:08.353 回答
0

...而不是传递您将创建的对象,您可以使用arguments所有函数可用的默认参数并从那里开始。

function a(){alert(arguments.length)}

a(1,2); // alerts 2
a(1,2,3); // alerts 3
a(1); // alerts 1

希望这可以帮助。

于 2013-03-04T08:13:16.287 回答