11 янв. 2015 г.

Функции

В первой части мы познакомились с основами программирования (команды, условия, переменные) и с инструментами отображения (HTML и CSS). Теперь нам надо научиться правильно группировать куски программы для большего удобства и понятности кода.

Когда говорят “сходи в магазин”, не перечисляют все действия, которые нужно совершить (одеться, дойти до магазина, найти нужные товары, заплатить, взять сдачу и т.д.). Эти действия и так подразумеваются. Зачем говорить лишнее?

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

function СкажиВременаСуток(){
alert("Утро");
alert("День");
alert("Вечер");
alert("Ночь");
}

Функция позволяет запустить сразу целый список действий одним вызовом.

Действия в функции не выполняются сразу после ввода. Для запуска надо вызвать функцию по имени и со скобками:
СкажиВременаСуток();

Попробуйте написать в консоли свою собственную функцию “НазовиВременаГода” по аналогии с СкажиВременаСуток(). Введите ее в консоли (Enter, функция сохранится в памяти) и затем напишите название со скобками:

НазовиВременаГода();
— И запускаем. Получилось?

Скобки после названия функции () нужны для передачи информации внутренним командам. Это не обязательно, поэтому часто скобки остаются пустыми.

Когда в команде alert("Утро"); мы указываем текст “Утро”, мы посылаем данные. Также и в собственные функции мы можем отправлять нужные данные.

Это делают так:
function Функция( переменная ){...}

1) При создании функции в скобках пишут название переменной, в которой сохранится вставленная информация.
2) При вызове информацию “посылают” в скобках.

Функцию СкажиВременаСуток можно превратить в такую (введите ее в консоли):


function СкажиВременаСуток(переменая1, переменая2, переменая3, переменая4){
alert(переменая1);
alert(переменая2);
alert(переменая3);
alert(переменая4);
}

А при вызове функции надо будет передать данные вот так (проверьте):
СкажиВременаСуток("Утро", "День", "Вечер", "Ночь")
— Компьютер автоматически положит информацию в соответствующие переменные.

Если передать другие данные в функцию СкажиВременаСуток, программа выведет другой текст. Например, попробуйте СкажиВременаСуток("Зима", "Весна", "Лето", "Осень").

Функция стала универсальной. Получилось, что она теперь показывает любые четыре текста, которые в нее отправят при вызове, а вовсе не времена года. — Название вводит в заблуждение. Теперь функцию лучше назвать, к примеру, “СкажиЧетыреСлова”. Нажмите в консоли стрелку вверх пока не появится текст функции, измените название и введите снова. Попробуйте в работе с разными данными.

В программировании очень важно давать понятные названия переменным, функциям и другим частям программы, чтобы не запутаться.

Следующий урок >>

2 комментария:

  1. У меня не получаетса. Даже когда скопировал не получилось

    ОтветитьУдалить
    Ответы
    1. сначала введи
      function СкажиВременаСуток(переменая1, переменая2, переменая3, переменая4){
      alert(переменая1);
      alert(переменая2);
      alert(переменая3);
      alert(переменая4);
      }
      А потом СкажиВременаСуток("Утро", "День", "Вечер", "Ночь")

      Удалить