Мне кажется, мне нужно что-то вроде ruby splat *
здесь.
function foo() {
var result = '';
for (var i = 0; i < arguments.length; i++) {
result += arguments[i];
}
return result;
}
function bar() {
return foo(arguments) // this line doesn't work as I expect
}
bar(1, 2, 3);
Я хочу, чтобы это возвращало "123"
, но вместо этого я получаю "[object Arguments]"
. Кажется, это имеет смысл. Он передает объект, который представляет аргументы, но не аргументы индивидуально.
Итак, как я просто пересылаю любое количество аргументов другой функции, которая принимает любое количество аргументов?