4

我在 JavaScript 中有一个函数:

function test() {
  console.log(arguments.length);
}

如果我用 调用它test(1,3,5),它会打印出来,3因为有 3 个参数。如何从另一个函数中调用 test 并传递另一个函数的参数?

function other() {
  test(arguments); // always prints 1
  test(); // always prints 0
}

我想打电话other并让它test用它的arguments数组调用。

4

2 回答 2

7

看看apply()

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/apply

function other(){
    test.apply(null, arguments);
}
于 2013-11-09T02:09:45.430 回答
0

你为什么不尝试传递这样的论点?

function other() {
  var testing=new Array('hello','world');
  test(testing); 
}
function test(example) {
  console.log(example[0] + " " + example[1]);
}

输出:hello world

这是一个有效的JSFiddle

于 2013-11-09T02:19:34.220 回答