Определение функции ещё не вызывает её выполнения. Определение функции просто именует её и специфицирует действия функции при её вызове. Вызов функции выполняет специфицированные действия с указанными параметрами. Например, если Вы определяете функцию square, можно будет вызвать её так:
square(5)
Здесь функция вызывается с аргументом 5. Функция выполняет свои операторы и возвращает значение 25.
Аргументы функции - это не только строки или числа. Вы можете также передавать в функцию целый объект. Функция show_props (определена в ) это пример функции, принимающей объект в качестве аргумента.
Функция может быть рекурсивной, то есть может вызывать сама себя. Например, функция вычисления факториала:
function factorial(n) {
if ((n == 0) (n == 1))
return 1
else {
var result = (n * factorial(n-1) );
return result
}
}
Вы можете затем вычислять факториал от 1 до 5:
a=factorial(1) // возвращает 1
b=factorial(2) // возвращает 2
c=factorial(3) // возвращает 6
d=factorial(4) // возвращает 24
e=factorial(5) // возвращает 120