Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КонспЛекци1.10.052.doc
Скачиваний:
12
Добавлен:
06.12.2018
Размер:
8.63 Mб
Скачать
    1. Вопрос 29. JavaScript.

JavaScript - это язык программирования, используемый в составе страниц HTML для увеличения функциональности и возможности взаимодействия с пользователем.

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

Описания элементов языка имеют одинаковую структуру. После названия элемента и указания его типа (объект, свойство или метод) следует краткое описание способа применения. Далее приводится синтаксис команды.

Некоторые элементы, особенно относящиеся к формам, могут быть реализованы несколькими способами. Основные варианты перечисляются как часть синтаксиса. если предлагается такой синтаксис: document formName, то к форме, названной user.Info, можно обращаться следующим образом: docurnent.userInfo.

Методы, помеченные звездочкой, являются встроенными и не требуют вызова объекта для своей работы.

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

Обработчики событий

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

Обработчики событий встраиваются в теги HTML, обычно в составе форм, но иногда включаются в описание ссылок.

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

Например, следующий фрагмент кода выводит строку «Netscape's Home Page» в строке состояния, когда указатель мыши оказывается над гиперссылкой.

<A HREF="home.netscape.com" onMouseOver="window.status='Netscape's Ноmе Page'; return. true">

Функции

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

Как правило, лучше всего помещать определения функций внутри тега . Такой подход гарантирует, что любая функция будет загружена в память и «готова к употреблению» прежде, чем пользователь сможет произвести какие-либо действия, вызывающие эту функцию.

Для lavaScript синтаксис таков:

<SCRIPT LANGUAGE="JavaScript"> <! – – ...Строки кода... // --> </SCRIPT>

Обратите внимание на использование тегов комментария HTML <! – – и -- >Если страница, содержащая сценарий, будет загружена в броузер, не поддерживающий языки сценариев, строки программы будут выведены на экран как обычный текст, засоряя экран

Если же использовать тег комментария, такой броузер пропустит текст программы, воспринимая его как комментарий. Двойная косая черта перед закрывающим текст JavaScript-программы тегом комментария гарантирует, что тег не будет воспринят броузером как оператор JavaScript.

Операторы JavaScript

Управление последовательностью действий в ходе выполнения сценария осуществляется с помощью операторов. JavaScript содержит стандартный набор операторов, унаследованный от языков C++ и Java, а именно:

 условный оператор if…else;

 оператор выбора switch;

 операторы цикла forwhiledo…whilebreak и continue;

 оператор итерации for…in;

 оператор указания объекта with;

 операторы обработки исключений try…catch и throw;

 операторы декларации функций function и возврата из функции return.

Следующие операторы описаны в других разделах справочника:

 оператор декларации переменных var.

Любое выражение JavaScript также является оператором.

Условный оператор

Условный оператор if…else позволяет проверить определенное условие и, в зависимости от его истинности, выполнить ту или иную последовательность операторов. Он имеет две формы:

if (условие) оператор1

if (условие) оператор1 else оператор2

Здесь условие — это любое выражение, значение которого может быть преобразовано к логическому типу, оператор1 и оператор2 — любые группы операторов JavaScript; если эти группы содержат более одного оператора, то они должны быть заключены в фигурные скобки {}.

Первая форма оператора означает, что если значение условия истинно, то выполняются операторы1; если оно ложно, то управление передается оператору, следующему заif.

Вторая форма оператора означает, что если значение условия истинно, то выполняются операторы1; если оно ложно, то выполняются операторы2.

Пример использования условного оператора в теле функции, возвращающей наибольшее из трех чисел:

function maxValue(x, y, z) {

if (x >= y) {

if (x >= z)

return x;

else

return z;

}

else {

if (y >= z)

return y;

else

return z;

}

}

Оператор выбора

Оператор выбора switch выполняет ту или иную последовательность операторов в зависимости от значения определенного выражения. Он имеет вид:

switch (выражение) {

case значение:

операторы

break;

case значение:

операторы

break;

...

default:

операторы

}

Здесь выражение — это любое выражение, значение — это возможное значение выражения, а операторы — любые группы операторов JavaScript.

Оператор выбора сначала вычисляет значение выражения, а затем проверяет, нет ли этого значения в одной из меток case значение. Если такая метка есть, то выполняются операторы, следующие за ней; если нет, то выполняются операторы, следующие за меткой default (если она отсутствует, то управление передается оператору, следующему за switch).

Необязательный оператор break указывает, что после выполнения операторов управление передается оператору, следующему за switch. Если break отсутствует, то после выполнения операторов начинают выполняться операторы, стоящие после следующей метки case (управление как бы "проваливается" в следующую метку).

В следующем примере значение переменной length преобразуется в метры в зависимости от начальной единицы измерений, заданной в переменной str. Обратите внимание, что после case "м" нет оператора break; в данном случае это означает, что эта метка и метка default обрабатываются одинаково, а именно значение переменной length не изменяется.

var str = "см";

var length = 25;

switch (str) {

case "км":

length *= 1000;

break;

case "см":

length /= 100;

break;

case "м":

default:

break;

}

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

Цикл — это последовательность операторов, выполнение которой повторяется до тех пор, пока определенное условие не станет ложным. JavaScript содержит три оператора цикла: forwhile и do…while, а также операторы break и continue, которые используются внутри циклов.

Близок к операторам цикла и оператор итерации for…in, используемый при работе с объектами.