2014-01-14 2 views

ответ

17

Да. length свойства функции возвращает количество объявленных аргументов:

alert(ada.length); // 1 
alert(dad.length); // 0 
+0

Это так полезно, чтобы иметь возможность найти количество объявленных аргументов функции на динамическом языке, и все же решение JavaScript называть это свойство 'length' кажется странным ... – iamnotmaynard

+2

Действительно ли это действительно полезно? –

4

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

function foo(one, two, three) { 
    return foo.length === arguments.length; 
} 

foo("test"); 
foo("test", "test", "test"); 

Выход:

false 
true 
+0

+1 для использования правильного термина «формальные параметры», хотя он должен читать «... не обязательно равный количеству фактических * аргументов *». –

+0

«Фактический аргумент» является избыточным. «Аргумент» и «фактический параметр» являются синонимами. –

+0

См .: http://en.wikipedia.org/wiki/Parameter_(computer_programming)#Parameters_and_arguments –

Смежные вопросы