WebRazrab

WebRazrab

Ваш помощник в обучении

Array

leafleafleafDocy banner shape 01Docy banner shape 02

Циклы

Циклы

Кирилл Юрьевич Жигалов, к.т.н., преподаватель Университета «Синергия»

СОДЕРЖАНИЕ

  • Виды циклов
  • Параметры аргументов

Действие циклов заключается в последовательном повторении определенной части вашей программы некоторое количество раз. Повторение продолжается до тех пор, пока выполняется соответствующее условие. Когда значение выражения, задающего условие, становится ложным, выполнение цикла прекращается, а управление передается оператору, следующему непосредственно за циклом.

  • for;
  • while;
  • do while.

Пример

На экран выводятся квадраты целых чисел от 0 до 14: var i;

for(i = 0; i < 15; i++){

document.write(“квадрат числа ” + i + ” = ” + (i * i) + “<br>”);

}

Структура цикла

Инициализирующее выражение

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

Условие выполнения – это логическое выражение, определяющее необходимость повторения цикла.

Итерация – выражение, определяющее величину, на которую должно изменяться значение переменной, управляющей циклом, при каждом повторе цикла. Выполнение цикла for будет продолжаться до тех пор, пока проверка условия дает истинный результат. Как только эта проверка даст ложный результат, цикл завершится, а выполнение программы будет продолжено с оператора, расположенного за циклом.

Цикл while

Цикл while содержит условие выполнения цикла, но не содержит ни инициализирующих, ни инкрементирующих выражений.

while(условие){

//оператор(ы)

}

В случае невыполнения условия при первой проверке тело цикла вообще не исполнялось

Пример

var n = 0; while(n != 5){

document.write(n + ” “);

n++; //если из кода убрать эту строку, то цикл будет бесконечным

}

Цикл do while

Условие выполнения цикла располагается не перед, а после тела цикла.

Пример

var n = 0;

do{ document.write(n + ” “); n++;

}while(n != 5);

Используется, когда необходимо выполнить тело цикла хотя бы один раз вне зависимости от истинности проверяемого условия.

Операторы break и continue

Оператор break производит выход из цикла.

Следующим оператором, исполняемым после break, будет являться первый оператор, находящийся вне данного цикла.

Пример

for(var i = -10; i <= 10; i++){

if(i > 0) break; //завершить цикл, как только значение

//переменной i станет положительным document.write(i + ” “);

} document.write(“Готово!”);

С помощью оператора continue можно организовать преждевременное завершение шага итерации цикла. Оператор continue осуществляет принудительный переход к следующему шагу цикла, пропуская любой код, оставшийся невыполненным.

Пример

for(var i = 0; i <= 100; i++){

if((i % 2) != 0) continue; //перейти к следующему шагу итерации

document.write(i + ” “);

}

Функции JavaScript

Функция – это блок кода на языке JavaScript, который определяется однажды, и в дальнейшем может выполняться или вызываться сколько угодно раз.

Определение и вызов функций

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

  • Имя функции;
  • Круглые скобки, которые могут содержать список имен параметров, разделенных запятыми;
  • Выполняемые действия, которые составляют тело функции, заключенные в фигурные скобки.Для вызова функции используется оператор вызова, представляющий из себя пару круглых скобок.

Пример

//определение функции function starline() { for(var i = 0; i < 45; i++){ document.write(“*”);

}

document.write(“<br>”);

}

starline(); //вызов функции document.write(“<p>это абзац</p>”);

starline();

Функция starline() вызывается дважды.

Область видимости глобальных и локальных переменных

Область видимости переменной – это та часть программы, для которой эта переменная определена.

Глобальная переменная имеет глобальную область видимости – она определена для всей JavaScript программы. Переменные, объявленные внутри функции называются локальными и имеют локальную область видимости т.е. они видны только в теле функции. Параметры функции также являются ее локальными переменными и видны только в ее теле.

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

Пример

var x = “глобальная”; function checkscope() { var x = “локальная”; document.write(x);

}

checkscope()

Параметры и аргументы

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

Аргумент – это выражение, которое может быть переменной, литералом, или выражением, состоящим из одного или нескольких операторов, которое служит для инициализации параметров.

В JavaScript при установке параметров для функции не указывается ключевое слово var. JavaScript объявляет переменные автоматически, когда они устанавливаются в качестве параметров функции, поэтому ключевое слово var здесь не используется.

Параметры можно использовать как и все другие переменные

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

Когда функция вызывается с меньшим количеством используемых параметров, чем описывается в определении, недостающие параметры получают значение undefined.

Оператор return

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

Пример

return имя_переменной; return “строка1 ” + “строка 2”; return true;

return null;

return a + (b – 31) * 2;

Оператор return может использоваться без значения, чтобы прекратить выполнение и выйти из функции:

function calc(a) { if(!a) return; document.write(a);

}

В функции может использоваться не один, а несколько операторов return:

function check(a, b) { if(a > b) { return a;

} else { return b;

}

}

Выбор имени функции

Имя функции следует выбирать по тем же правилам что и имя переменной.

Единственное различие – это то, что в качестве имени функции обычно выбирают глагол, т.к. функция выполняет действие.

Диалоговые окна

alert(“Текст сообщения”);

Выводит диалоговое окно с заданным сообщением и кнопкой ОК.

confirm(“Текст сообщения”);

Выводит диалоговое окно с заданным сообщением и кнопками ОК и ОТМЕНА.

prompt(“Текст сообщения”, [“текст по умолчанию в поле ввода”]);

Все три типа окна являются модальными.

Также могут использоваться для вывода результатов.


Рекомендуемая литература

  • Нотон П.JAVA:Справ.руководство:Пер.с англ./Под ред.А.Тихонова.- М.:БИНОМ:Восточ.Кн.Компания,1996:Восточ.Кн.Компания.-447с..-(Club Computer)
  • Патрик Нотон, Герберт Шилдт Полный справочник по Java.- McGraw- Hill,1997, Издательство “Диалектика”,1997
  • Дэвид Флэнэген Java in a Nutshell.- O’Reilly & Associates, Inc., 1997, Издательская группа BHV, Киев, 1998
  • Ренеган Э.Дж.(мл.)1001 адрес WEB для программистов:Новейший путеводитель программиста по ресурсам World Wide Web:Пер.с англ..- Минск:Попурри,1997.-512с.ил.
  • Сокольский М.В.Все об Intranet и Internet.-М.:Элиот,1998.-254с.ил.
  • Чен М.С. и др.Программирование на JAVA:1001 совет:Наиболее полное руководство по Java и Visual J++:Пер.с англ./Чен М.С.,Грифис С.В.,Изи Э.Ф..-Минск:Попурри,1997.-640с.ил.+ Прил.(1диск.)
  • Майкл Эферган Java: справочник.- QUE Corporation, 1997, Издательство “Питер Ком”, 1998
  • Джо Вебер Технология Java в подлиннике.- QUE Corporation, 1996, “BHV-Санкт-Петербург”,1997
  • Джейсон Мейнджер Java: Основы программирования.- McGraw- Hill,Inc.,1996, Издательская группа BHV, Киев,1997
  • И.Ю.Баженова Язык программирования Java.- АО “Диалог-МИФИ”, 1997
  • Джон Родли Создание Java-апплетов.- The Coriolis Group,Inc.,1996, Издательство НИПФ “ДиаСофт Лтд.”,1996
  • Майкл Томас, Пратик Пател, Алан Хадсон, Доналд Болл(мл.) Секреты программирования для Internet на Java.- Ventana Press, Ventana Communications Group, U.S.A.,1996, Издательство “Питер Пресс”, 1997
  • Аарон И.Волш Основы программирования на Java для World Wide Web.-IDG Books Worldwide,Inc.,1996, Издательство “Диалектика”,1996
  • Кен Арнольд, Джеймс Гослинг Язык программирования Java.- Addison-Wesley Longman,U.S.A.,1996, Издательство “Питер-Пресс”, 1997
  • Нейл Бартлетт, Алекс Лесли, Стив Симкин Программирование на Java. Путеводитель.– The Coriolis Group,Inc.,1996, Издательство НИПФ “ДиаСофт Лтд.”,1996
  • Крис Джамса Библиотека программиста Java.- Jamsa Press, 1996, ООО “Попурри”, 1996