Как узнать, сколько аргументов определяет функция? - PullRequest
1 голос
/ 30 декабря 2011

Я знаю arguments.length метод, но он возвращает количество аргументов, с которыми была вызвана функция.

Вместо этого мне нужно количество аргументов, необходимых для функции, например,

function myFunc(arg1,arg2,arg3) {
  alert("number of passed args:" + arguments.length);
  alert("number of required args:" + /*the code I'm asking for*/);
};

myFunc('some arg');

Таким образом, myFunc () вернет два оповещения, говорящих о 1 и 3.

Есть ли способ сделать это?

1 Ответ

3 голосов
/ 30 декабря 2011

Другое, он устарел arguments.caller.length свойство содержит это значение.

function myFunc(arg1,arg2,arg3) {
    alert("number of passed args:" + arguments.length);
    alert("number of required args:" + arguments.caller.length);
}

Другой метод получения числа формальных параметров - использование length свойство функции.Имя функции должно быть известно для этого метода:

function myFunc(arg1,arg2,arg3) {
    alert("number of passed args:" + arguments.length);
    alert("number of required args:" + myFunc.length);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...