В прошлом выпуске рассылки был рассмотрен ряд встроенных функций javascript. Встроенные функции нельзя изменить, и поэтому в javascript предусмотрена возможность создания собственных функций, которые называют – пользовательские функции.
Сначала функцию определяют:
function имя_функции(параметры) {
код
}
Встречая ключевое слово function, интерпретатор языка понимает, что далее следует код функции. Для выбора имени функции руководствуются правилами для выбора имени переменной (ни в коем случае не использовать ключевые слова). В круглых скобках указывают параметры – если необходимо. При определении функции параметрам присваиваются формальные имена, а значения параметрам присваиваются при вызове функции. При выборе имен для параметров руководствуются правилами для имен переменных. Далее в фигурных
скобках следует блок выражений.
Пример.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Пример</title>
<script language="javascript" type="text/javascript">
function rectangulararea(width, height){
S = width * height
return S
}
</script>
</head>
В данном примере между тэгами <script> и </script> помещено определение функции rectangulararea() – типа вычисляем площадь прямоугольника. Параметры width и height определяют соответственно ширину и высоту прямоугольника. В фигурных скобках переменной S присваивается значение вычисления площади прямоугольника.
Когда требуется, чтобы функция возвратила, какое-то значение применяют оператор возврата return, указывая, справа от него, что он должен вернуть. В данном примере функция возвращает значение переменной S. Возвращаемой величиной может быть: простое значение, имя переменной или вычисляемое выражение.
Оператор return можно использовать в коде функции несколько раз. Можно не указывать оператор return, тогда функция ничего возвращать не будет.
Встретив данное определение функции, интерпретатор просто считывает его в память и не вычисляет. Чтобы выполнить функцию, ее надо вызвать. В данном примере функция вызывается выражением:
onLoad="document.writeln(rectangulararea(5, 3))" // результат 15
которое размещает в тэге <body>.
При открытии страницы в браузере, происходит событие onLoad, которое вызывает к выполнению функцию rectangulararea(5, 3). Здесь в качестве параметров должны указываться конкретные значения.
Количество указанных параметров в определении и вызове функции может различаться. Если в определении функции указать три параметра, а в вызове два, то третьему параметру будет присвоено значение null. Если лишние параметры будут в вызове функции, то они будут проигнорированы.
Выше приведенный пример можно записать и по другому:
В данном случае мы обходимся без переменной.
Переменные, используемые в коде функции, могут быть глобальными и локальными.
Определение функции может содержать определения других функций.
Определение функции может стоять, как до, так и после ее вызова.
До следующего выпуска!
ВАШИ ВОПРОСЫ
Здесь будут размещаться Ваши вопросы. Поскольку я сам чайник в JavaScript, то будем сообща искать на них ответы. Обязательно познакомьтесь с правилами подачи вопросов и ответом.
ВОПРОС №4
Я работаю на си-шарп и там кроме логических операторов && и || есть еще
и унарные операторы & и |. Поддерживаются ли таковые в JavaScript?.
ОТВЕТ
Да, в JavaScript существует поддержка порязрадного И (&) и порязрядного поразрядного ИЛИ (||).
Более подробную информацию можно найти в каком-либо более-менее полном справочнике по языку.
Правила подачи вопросов и ответов.
Общие
Нековеркайте слова. Не применяйте нецензурные выражения. Не принимаются письма с вложенными файлами.
Такие письма будут просто удаляться.
Правила подачи вопросов
Правильно и понятно формулируйте ваши вопросы. Указывайте ваш рабочий адрес электронной почты. Старайтесь не забегать вперед рассылки. Указывайте тему письма как «Вопрос».
Правила для ответов
При ответе в теме письма указывайте Ответ - (номер вопроса). Если хотите ответить на несколько вопросов, то на каждый вопрос отвечайте отдельным письмом.