От автора: приветствую вас, друзья. В этой статье мы с вами продолжим изучение такой важной темы, как пользовательские функции в JavaScript. Именно благодаря возможности создавать собственные функции, мы можем писать более гибкий и красивый код. В статье мы коснемся темы параметров функции.
Итак, в прошлом уроке мы с вами создали простейшую учебную функцию, которая выводит приветствие в окне alert. Пока что такая функция для нас фактически бесполезна, но мы уже увидели, что функции позволяют избежать дублирования кода, тем самым делая наш код более гибким.
Давайте попробуем сделать что-нибудь более полезное, например, пусть это будет функция, складывающая два числа.
1 2 3 4 5 6 |
var a = 1, b = 2; function sum(){ alert(a + b); } sum(); |
Итак, функция готова. Мы ее назвали sum и она получает сумму переменных a и b. Постойте, скажете вы, но ведь она складывает только два заведомо определенных числа. Мы, конечно же, можем изменить эти числа, поменяв значения указанных переменных, но тогда в чем смысл функции? Мы ведь фактически не можем использовать ее многократно, поскольку все вызовы функции будут возвращать один и тот же результат:
1 2 3 4 5 6 7 |
var a = 10, b = 5; function sum(){ alert(a + b); } sum(); sum(); |
Оба вызова функции вернут один и тот же результат — число 15. Как же быть? Все просто, в функцию мы можем передавать параметры, которые затем можно использовать внутри функции. Передавая различные параметры, мы получим разный результат:
1 2 3 4 5 |
function sum(a, b){ alert(a + b); } sum(1, 2); sum(10, 5); |
Мы убрали объявление переменных и вместо них добавили в круглые скобки два параметра. Обратите внимание, это именно параметры (их еще называют аргументами) функции, это не переменные и мы можем называть эти параметры как угодно. Теперь наша функция более гибкая, поскольку мы можем использовать ее многократно, передавая различные параметры и получая разный результат.
На этом мы завершим данную статью. Если вы хотите больше узнать о JavaScript, тогда рекомендую обратить свое внимание на уроки по JavaScript и отдельный курс по языку JavaScript. Удачи!