Является ли это законным? И работает ли она во всех браузерах?
function func1(a, b, c) {
//b == 2 here
change_em(arguments);
//b should equal 3 here
}
function change_em(args) {
args[0] = 6;
args[1]++;
args[2] = [];
}
func1('foo', 2);
Если вам интересно, мне нужно настроить аргументы в функции. Макрос был бы идеальным, за исключением того, что у javascript его нет. Выполняя это правильно, т.е. Передавая переменные функции, затем возвращая их в объект, а затем извлекая их в вызывающем, будет почти такой же код, как и копирование/вставка функции регулятора.