Функция представляет собой группу из повторно используемого кода, которая может быть вызвана в любом месте в вашей программе. Это избавляет от необходимости снова и снова писать один и тот же код. Это помогает программистам в написании модульных кодов. Функции позволяют программисту разделить большую программу на ряд небольших и управляемых функций.
Как и любой другой передовой язык программирования, JavaScript также поддерживает все функции, необходимые для написания модульного кода с использованием функций. Вы, наверное, видели такие функции, такие как alert() и write() в предыдущих главах. Мы использовали эти функции снова и снова, но они были написаны в основном в JavaScript только один раз.
JavaScript также позволяет писать собственные функции. В этом разделе описано, как создавать свои собственные функции в JavaScript.
Перед тем, как использовать функцию, необходимо определить ее. Наиболее распространенный способ определения функции в JavaScript является использованием ключевого слова function, за которым следует уникальное имя функции, список параметров (который может быть пустым) и блоком операторов в фигурных скобках.
Основной синтаксис показан здесь.
<script type="text/javascript"> <!-- function functionname(parameter-list) { Ваш код } //--> </script>
Попробуйте следующий пример. Он определяет функцию с именем SayHello, которая не вызывается без параметров:
<script type="text/javascript"> <!-- function sayHello() { alert("Здравствуйте!"); } //--> </script>
Чтобы вызвать функцию где-то в сценарии, вам необходимо просто написать имя этой функции, как показано в следующем коде.
<html> <head> <script type="text/javascript"> function sayHello() { document.write ("Здравствуйте!"); } </script> </head> <body> <p>Нажмите следующую кнопку, чтобы вызвать функцию</p> <form> <input type="button" onclick="sayHello()" value="Say Hello"> </form> <p>Используйте другой текст в функции записи, а затем попробуйте...</p> </body> </html>
До сих пор мы видели функцию без параметров. Но есть средство, чтобы передавать различные параметры при вызове функции. Эти параметры могут быть захвачены внутри функции и любые манипуляции можно сделать над этими параметрами. Функция может принимать несколько параметров, разделенных запятой.
Попробуйте следующий пример. Мы здесь изменили нашу функцию SayHello. Теперь она принимает два параметра.
<html> <head> <script type="text/javascript"> function sayHello(name, age) { document.write (name + " - " + age + " лет."); } </script> </head> <body> <p>Нажмите следующую кнопку, чтобы вызвать функцию</p> <form> <input type="button" onclick="sayHello('Zara', 7)" value="Say Hello"> </form> <p>Используйте различные параметры внутри функции, а затем попробуйте...</p> </body> </html>
Функция JavaScript может иметь дополнительное заявление return. Оно необходимо, если вы хотите вернуть значение из функции. Это заявление должно быть последним оператором в функции.
Например, вы можете передать два числа в функцию, а затем вы можете ожидать, что функция вернет их рекурсию в своей вызывающей программе.
Попробуйте следующий пример. Она определяет функцию, которая принимает два параметра и сцепляет их перед возвращением результата в вызывающей программе.
<html> <head> <script type="text/javascript"> function concatenate(first, last) { var full; full = first + last; return full; } function secondFunction() { var result; result = concatenate('Zara', 'Ali'); document.write (result ); } </script> </head> <body> <p>Нажмите следующую кнопку, чтобы вызвать функцию</p> <form> <input type="button" onclick="secondFunction()" value="Call Function"> </form> <p>Используйте различные параметры внутри функции, а затем попробуйте...</p> </body> </html>
Существует много информации о функциях JavaScript, однако мы рассмотрели наиболее важные понятия в данном руководстве.