可能重复:
Calling dynamic function with dynamic parameters in Javascript
javascript array parameter list
我正在寻找与PHP中使用的以下功能相当的Javascript:
function myfunc()
{
$arg_arr = array();
$arg_arr = func_get_args();
$my_arg_val_1 = (!isset($arg_arr[1]) || ($arg_arr[1] == '')) ? true : $arg_arr[1];
}
基本上,我正在尝试获取函数参数。我想编写一个javascript函数来获取一个参数,但是我想添加一些代码来使用第二个和第三个参数做一些事情,如果提供的话,但是我不知道如何解决这个问题。
任何帮助将不胜感激。
感谢。
答案 0 :(得分:2)
使用arguments变量。
它不是一个数组(它是一个“类似数组的对象”,它与标准数组有一些区别),但你可以用这种方式将它转换为一个真正的数组:
function myfunc() {
var argArray = Array.prototype.slice.call( arguments );
/* ... do whatever you want */
}
答案 1 :(得分:1)
在JavaScript中,每个函数都有arguments
变量。它看起来像一个包含传递给函数的所有参数的数组:
function myfunc() {
var arg1 = arguments[0],
arg2 = arguments[1],
argc = arguments.length;
}
myfunc(1, "abc"); // arg1 = 1,
// arg2 = "abc",
// argc = 2
答案 2 :(得分:0)
这个问题是一个骗局,但答案很简单:
function foo() {
for (var i = 0; i < arguments.length; i++) {
alert(arguments[i]);
}
}
答案 3 :(得分:0)