Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Программы Обои   Экспорт RSS E-Books
 
 

   Интернет технологии -> JavaScript -> Программирование в JavaScript


1.4 Функции.

Функции - один из фундаментальных блоков JavaScript. Функция - JavaScript-процедура - набор операторов, который исполняет определенную задачу. Чтобы использовать функцию, необходимо сначала определить ее.

Определение функции состоит из ключевого слова function, за которым следуют:

  • - имя функции.
  • - список аргументов функции, заключенный в круглые скобки.Друг от друга аргументы отделяются запятыми.
  • - операторы JavaScript, заключенные в фигурные скобки {}.

Операторы могут включать в себя вызовы функций. определенных в текущем приложении. Различие между определением и вызовом функции традиционно для языков программирования. Определение функции просто называет функцию и задает выполняемые ею действия. Запрос функции исполняет указанные действия с фактическими параметрами. Следует определять функции для страницы в разделе HEAD документа. В этом случае все функции будут определены прежде, чем показано содержание документа. Иначе, в то время как страница еще не полностью загружена, пользователь мог бы исполнить действие, которое вызывает еще не загруженную функцию, что привело бы к ошибке. Пример простой функции:

function simplefun(str) {
          document.write("<HR><P>" + str)
}

Эта функция получает строку str, как аргумент, добавляет некоторые HTML-признаки к ней с помощью оператора конкатенации и выводит результат в текущем документе с помощью метода write.

1.4.1 Использование функций.

В Navigator'е можете использовать любую функцию, определенную в текущей странице. Можно также использовать функции, определенные в других поименованных окнах и фреймах. В LiveWire-приложениях можно использовать любую функцию скомпилированную с приложением. Как уже было сказано, определение функции не исполняет ее. Для того, чтобы функция выполнилась ее необходимо вызвать. Предположим функция simplefun была определена в разделе HEAD документа, тогда выполнить ее можно, например, следующим образом:

<SCRIPT> simplefun() </SCRIPT>

Аргументы функции не ограничиваются строками и числами, можно передавать в качестве аргументов также и целые объекты. Функция может быть в том числе и рекурсивной, то есть может вызывать сама себя. Например, имеется функция, которая вычисляет факториал:

function factorial(n) {
          if ((n == 0) || (n == 1))
                    return 1
          else {
                    result = (n * factorial(n-1) )
          return result
          }
}

Можно вывести результат от одного до пяти следующим образом:

for (x = 0; x < 5; x++) { document.write("<BR>", x, " factorial is ", factorial(x)) }

Результаты:

0 factorial is 1

1 factorial is 1

2 factorial is 2

3 factorial is 6

4 factorial is 24

5 factorial is 120

1.4.2 Использование массива аргументов.

Аргументы функции хранятся в массиве. Внутри функции можно адресоваться к параметрам следующим образом:

functionName.arguments [i]

где functionName - имя функции и i - порядковый номер аргумента, начинающийся с нуля. Так, первый аргумент функции, названной myfunc, есть myfunc.arguments [0]. Общее число аргументов обозначается переменной arguments.length. При использовании массива аргументов, можно вызывать функцию с большим количеством аргументов, чем объявлено. Это часто полезно в том случае, когда заранее не известно, сколько аргументов будут переданы функции. Чтобы определить число аргументов фактически переданных функции, можно использовать arguments.length Например, рассмотрим функцию, которая создает списки в HTML-документе. Единственный формальный аргумент функции - строка, которая имеет значение "U" для ненумерованного списка или "O" для нумерованного. Определение функции:

function list(type) {
          document.write("<" + type + "L>") // начало списка
          // цикл по аргументам
          for (var i = 1; i < list.arguments.length; i++) 
                    document.write("<LI>" + list.arguments[i])
          document.write("</" + type + "L>") // end list
}

Можно обращаться к функции с любым числом аргументов и она будет выводить список указанного типа. Например, следующий запрос к функции

list("О", "one", 1967, "three", "etc., etc...")

выводит информацию в виде пронумерованного списка, так как первый аргумент равен О:


[ Оглавление ]   [ Дальше ]

 

 
Интересное в сети
 
10 новых программ
CodeLobster PHP Edition 3.7.2
WinToFlash 0.7.0008
Free Video to Flash Converter 4.7.24
Total Commander v7.55
aTunes 2.0.1
Process Explorer v12.04
Backup42 v3.0
Predator 2.0.1
FastStone Image Viewer 4.1
Process Lasso 3.70.4
FastStone Image Viewer 4.0
Xion Audio Player 1.0.125
Notepad GNU v.2.2.8.7.7
K-Lite Codec Pack 5.3.0 Full


Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
Реклама на сайте. Размещая рекламу у нас, вы получите новых посетителей, которые могут стать вашими клиентами.
 
Это интересно
 

Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.