Материал: Web-дизайн. лабораторный практикум. Суворов А.П., Проценко В.Н

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Необязательный оператор break, задавемый в блоках case, выполняет безусловный выход их оператора switch.

2. Операторы цикла

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

• цикл for (цикл со счетчиком)

for (i=1; i<10; i++){ <тело цикла>

}

Первый параметр (i=1) определяет счетчик и указывает его начальное значение. Этот параметр называется начальным выражением, поскольку в нем задается начальное значение счетчика (начальное значение в данном случае равно единице). Это выражение инициализации выполняется самым первым и всего один раз.

Второй параметр (i<10) - это условие, которое должно быть истинным, чтобы цикл выполнялся, как только условие цикла становится ложным, работа цикла завершается. Он называется условием цикла. Проверка условия цикла осуществляется на каждом шаге; если условие истинно, то выполняется тело цикла (операторы в теле цикла). Цикл в данном случае выполнится только девять раз, так как задано условие i<10.

Третий параметр (i++) - это оператор, который выполняется при каждом последовательном прохождении цикла. Он называется выражением инкремента, поскольку в нем задается приращение счетчика (приращение счетчика в данном случае равно единице). Пример автоматической прорисовки нескольких линий с помощью цикла for.

<script language="JavaScript" type="text/JavaScript"> for (var i=1; i<10; i++){

document. write("<hr align='center' width='100'>");

}

</script>

цикл while (цикл с предусловием) while (условие)

{

<тело цикла>

}

30

Пока значение условия - true (истинно), выполняется тело цикла. Тело цикла может быть представлено простым или составным оператором.

Оператор while содержит в скобках все необходимые параметры условия цикла (логическое выражение). После определения всех параметров цикла вводится открывающая фигурная скобка, символизирующая начало тела цикла. Закрывающая фигурная скобка вводится в конце тела цикла. Все операторы, введенные в скобках, выполняются при каждом прохождении цикла.

<script language="JavaScript"> var i=1;

while(i<=10){ document.write('число='+i+'<br>'); i=i+2;

}

</script>

• прерывание и перезапуск цикла

Оператор прерывания break позволяет прервать выполнение цикла и перейти к слудующему за ним выражению:

a = 10; i = 1;

while (a<100){ a = a * i;

if (i>4) break; ++i;

}

Если значение i превысит 4, то прерывается выполнение цикла. Оператор перезапуска continue позволяет перезапустить цикл, т.е.

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

a = 10; i = 1;

while (a<100){ ++i;

if (i>2 && i<11) continue; a = a * i;

}

Создание и вызов функций в JavaScript

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

31

ее имени. Функции создаются с помощью ключевого слова function. Обычно функции располагают в секции <head>. Такое расположение функций в HTML-документе гарантирует их полную загрузку до того момента, когда их можно будет вызвать из секции <body>.

После названия функции (func_name) ставятся двойные круглые скобки, программный код при этом заключается в фигурные скобки:

<script language="JavaScript"> function func_name ()

{

программный код функции (тело функции)

}

</script>

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

<script language="JavaScript"> func_name ();

</script>

Второй вариант вызова функции непосредственно в HTML теге:

<a href="javascript:func_name()">Текст ссылки</a>

Ниже приведен код страницы HTML, после загрузки которой каждые три секунды будет появляться сообщение, генерируемое вызовом функции myMessage():

<script>

function myMessage()

{

alert("My Message")

}

</script>

<body onload='setTimeout ("myMessage()",3000)'>

<p>Каждые три секунды будет появляться сообщение</p> </body>

Метод setTimeout() запускает выполнение кода JavaScript, задаваемого первым строковым параметром, через определенный промежуток времени после выполнения метода.

Интервал задается в миллисекундах (1000 соответствует 1 секунде).

32

1.3.5. Стандартные объекты и функции ядра JavaScript

Объект Array

Массив - упорядоченный набор однородных данных, к элементам которого можно обращаться по имени и индексу. Язык JavaScript не имеет встроенного типа данных для создания массивов, поэтому для решения используется объект Array и его методы.

Для создания объекта Array вызывается оператор new и конструктор массива - системная функция (ее имя совпадает с именем объекта), инициализирующая элементы массива:

m=new Array();

Заполнение массива происходит позже. Например:

<script language="JavaScript"> //создание нового массива m=new Array(); //заполнение массива m[0]=1;

m[1]=2;

m[2]=4;

m[3]=56;

</script>

В приведенном выше примере с помощью команды new создается массив m, а затем происходит его заполнение - каждому элементу присваивается определенное значение.

m=new Array(1,2,4,56);

Вызывается команда new и сразу задаются значения всех элементов массива.

<script language="JavaScript">

//создание нового массива и его заполнение m=new Array(1,2,4,56)

</script>

Объявление строковых массивов проводится тем же способом, что и объявление числовых массивов.

33

 

Таблица 1.8

Методы объекта Array

Действие

 

 

 

 

join()

Объединяет все элементы массива в одну строку

 

 

с указанием разделителя

 

 

 

 

reverse()

Изменяет порядок элементов в массиве - первый

 

 

элемент становится последним, последний -

 

 

первым

 

sort()

Выполняет сортировку элементов массива

 

 

 

 

split()

Разделяет строку на составные части

 

 

 

 

concat()

Объединяет два массива в один

 

 

 

 

slice()

Выделяет часть массивы

 

 

 

 

toString()

Возвращает строку - результат конкатенации всех

 

 

элементов массива. Элементы массива в строке

 

 

разделены запятой.

 

 

 

 

Свойство length

Возвращает длину массива (число элементов в

 

 

нем).

 

 

 

 

Пусть определены два массива:

array1 = new Array("Первый","Второй","Третий"); array2 = new Array("Один","Два","Три");

Тогда метод join() первого массива array1.join() возвратит строку:

"Первый,Второй,Третий"

Метод sort() первого массива array1.sort() упорядочит элементы массива array1 (переставив их местами непосредственно в самом массиве array1) в алфавитном порядке:

array1[0] = "Второй"; array1[1] = "Первый"; array1[2] = "Третий";

Поскольку некоторые методы массива возвращают массив, то к нему можно сразу же применить какой-либо метод, продолжив "точечную"

34

Источник: https://studfile.net/preview/16568571/