Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Использование условных выражений




В JScript поддерживаются условные выражения ifи if...else. В выражении ifпроверяется условие, при соответствии этому условию, выполняется написанный разработчиками JScript-код. (В выражении if...elseвыполняется при несоответствии условию другой код.) Простейшая форма оператора ifможет быть написана одной строкой, Но обычно операторы ifи if...elseзаписываются в несколько строк.

Следующий пример демонстрирует синтаксис выражений ifи if...else. В первом примере - простейшая логическая проверка. Если выражение в круглых скобках равно true, выражение или блок выражений после ifвыполняется.

 

// Функция smash() определена в другом месте кода.

if (newShip)

       smash(champagneBottle,bow); // Логическая проверка newShip на равенство true.

// В данном примере, условие выполняется, если оба подусловия равны true.

if (rind.color == "ярко-желтый " && rind.texture == "большие и малые пятна") {

       theResponse = ("Это тыква? <br> ");

}

// В следующем примере, условие выполнится, если хотя бы одно из подусловий (или оба) равны true.

var theReaction = "";

if ((lbsWeight > 15) || (lbsWeight > 45)) {

       theReaction = ("Неплохо! <br>");

} else {

       theReaction = ("Неочень! <br>");

}

 

Цикл FOR

Описание

Выполнение блока инструкций до тех пор, пока указанное условие верно.

Синтаксис

for( initialization ; test ; increment )

statement

 

Синтаксис инструкции forсостоит из следующих частей:

 

Часть Описание
initialization Выражение ( expression ). Выполняется однажды - перед выполнением цикла.
test Логическое выражение ( Boolean expression ). Если test равно true, выполняется statement . Если test равно false, цикл заканчивается.
increment Выражение. Выполняется в конце каждой итерации цикла.
statement Инструкция, выполняемая при test равном true. Может быть составной (compound statement ).

Примечание

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

 

/* i установлено равным 0 в начале и увеличивается на единицу в конце каждой итерации.

Цикл завершается, когда i становится не менее 10 до итерации цикла. */

var myarray = new Array();  

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

       myarray[i] = i;

}

 

Цикл FOR ... IN

Описание

Выполнение инструкции для каждого элемента объекта или массива.

Синтаксис

for( variable in[ object | array ])

statement

 

Синтаксис инструкции forсостоит из частей:

 

Часть Описание
variable Переменная (variable), содержащая любой элемент object .
object,array Объект или массив для выполнения итераций.
statement Инструкция, исполняемая для каждого элемента object . Может быть составной (compound statement).

Примечание

До каждой итерации variable присваивается значение следующего элемента object. Можно использовать любою из инструкций внутри цикла точно также как элемент object.

При выполнении итераций в объекте, нельзя никаким способом определять или управлять порядком, в котором элементы объекта назначены для variable .

В следующем примере применяется инструкция for ... in:

 

function ForStmDemo() { // Создание некоторых переменных.

       var a, d, i, s = "";

       d = new ActiveXObject("Scripting.Dictionary"); // Добавлениеключейизначений

       d.Add ("a", "Athens");

       d.Add ("b", "Belgrade");

       d.Add ("c", "Cairo"); // Размещение элементов в массиве.

       a = (new VBArray(d.Items())).toArray(); //Выполнениеитераций.

       for ( i in a ) {

                   s += a[i] + "\n";

       }

       return(s);

}

 

Цикл WHILE

Описание

Выполнение инструкции до тех пор, пока указанное условие не станет false.

 

Синтаксис

while( expression )

statement

 

Синтаксис инструкции whileсостоит из частей:

 

Часть Описание
expression Логическое выражение (Boolean expression), проверяемое до начала выполнения каждой итерации цикла. Если expression равно true, цикл выполняется. Если expression равен false, то происходит выход из цикла.
statement Выполняемая инструкция при expression равном true. Может быть составной (compound statement).

Примечание

Инструкция whileпроверяет expression до выполнения цикла. Если expression равно false, цикл никогда не будет выполнен.

В следующем примере применяется инструкция while:

 

function BreakTest(breakpoint) {

       var i = 0;

       while ( i < 100 ) {

                   if (i == breakpoint)

                              break; i++;

       }

       return(i);

}

 

Цикл DO ... WHILE

Описание

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

 

Синтаксис

do
statement
while( expression ) ;

 

Синтаксисинструкцииdo...whileсостоитизчастей:

 

Часть Описание
statement Инструкция, исполняемаяприexpressionравномtrue. Может быть составной (compound statement).
expression Выражение (expression), преобразованное к булеву значению trueили false. При expression равном true, цикл выполняется снова. Если expression равно false, происходит выход из цикла.


Примечание

Значение expression не проверяется до выполнения первой итерации, это гарантирует, что цикл будет выполнен по крайней мере один раз. Условие проверяется после выполнения каждой итерации.

В следующем примере применена инструкция do...while:

 

function GetDriveList() {

       var fso, s, n, e, x;

       fso = new ActiveXObject("Scripting.FileSystemObject");

       e = new Enumerator(fso.Drives);

       s = "";

       do {

                   x = e.item();

                   s = s + x.DriveLetter;

                   s += " - ";

                   if (x.DriveType == 3)

                              n = x.ShareName;

                   else

                              if (x.IsReady)

                                     n = x.VolumeName;

                              else

                                          n = "[Drive not ready]";

                   s += n + "<br>";

                   e.moveNext(); }

       while ( !e.atEnd() );

       return(s);

}

 

Оператор SWITCH

Описание

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

Синтаксис

switch (expression ) {

caselabel :

statementlist

caselabel :

statementlist

...

default :

statementlist

}

 

Синтаксис инструкции switchсостоит из частей:

 

Часть Описание
expression Оцениваемое выражение.
label Идентификатор соответствия для expression. Если label === expression, немедленно начинается выполнение statementlist после двоеточия и выполняется либо до инструкции break, которая необязательно, либо до конца инструкции switch.
statementlist Одна и несколько инструкций к выполнению.

Примечание

Используйте предложение defaultдля инструкций, которые будут выполнены, если ни одна из меток не совпадет с expression. Оно должно размещаться в пределах инструкции switch.

Если никакой label не соответствует expression, a defaultне указан, то ни одна инструкция не будет выполнена.

Выполнение происходит следующим образом:

  1. Оценивает expression и label по порядку до нахождения соответствия.
  2. Если значение label равно expression , выполняется statementlist .
    Выполнение продолжается до инструкции breakили до окончания инструкции switch. Это делает возможным выполнение инструкций нескольких label при неиспользовании инструкций break.
  3. Если нет ни одного label , равных expression , выполняется вариант default.
  4. Выполняются инструкции, следующие за окончанием всех блоков в инструкции switch.

В следующем примере объект проверяется на тип:

 

function MyObject() {

       ...

       switch ( object.constructor ){

                   case Date : ...

                   case Number : ...

                   case String : ...

                   caseMyObject : ...

                   default: ...

       }

}

 


Функции

Чтотакоефункция?

Функции в Microsoft JScript выполняют определенные действия. Они могут возвращать некоторый результат, например результат вычислений или сравнения

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

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

В JScript имеется два вида функций: встроенные и определяемые.

 










Последнее изменение этой страницы: 2018-04-12; просмотров: 399.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...