Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции ПОКС.doc
Скачиваний:
3
Добавлен:
01.03.2025
Размер:
5 Мб
Скачать
☆

Логические операторы

Логические операторы принимают логические (Булевы) значения как операнды. Они возвращают логическое значение. Логические значения true(истина) и false(ложь).

И (&&)

Использование: expr1 && Expr2

Логический "и" возвращает оператор true, если оба логических выражения и expr1 и expr2 true. Иначе, возвращается false.

Или (||)

Использование: expr1 || expr2

Логический "или" возвращает оператор true, если хотя бы одно из логических выражений или expr1 или expr2 true. Если и expr1 и expr2 false, то это возвращается false.

Нет (!)

Использование:! Expr

Логический оператор "нет" - унарный оператор, который отрицает выражение операнда expr. То есть если expr true, то возвращает false, и если expr false, то возвращает true.

Вычисление...

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

  • false && Какая - нибудь - короткая цепь, оцененная как false.

  • true || Какая - нибудь - короткая цепь, оцененная как true.

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

Операторы Сравнения (==, >, >, =<, <=,!=)

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

Операторы:

  • Равно (==): возвращает true, если операнды равны.

  • Не равно (!=): возвращает true, если операнды не равны.

  • Больше чем (>): возвращает true, если левый операнд больше чем правый операнд. Пример: x>y возвращает true, если x больше чем y.

  • Больше или равно чем (>=): возвращает true, если левый операнд больше чем или равен правому операнду. Пример: x>=y возвращает true, если x больше или равен чем y.

  • Меньше чем (<): возвращает true, если левый операнд - меньше чем правый операнд. Пример: x<y возвращает true, если x - меньше чем y.

  • Меньше или равно чем (< =): возвращает true, если левый операнд - меньше или равен правому операнду. Пример: x<= y возвращает true, если x - меньше или равен y.

Операторы Строки

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

"my " + "string"

Возвращает строку

"my string"

Оператор происвоения += может также использоваться, чтобы конкатенировать строки. Например, если переменнай mystring - строка, которая имеет значение "alpha", затем выражение

Mystring + = "bet"

Вычисляет как "alphabet" и приписывает это значение mystring.

Операторы

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

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

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

Ниже описаны операторы, которые используются в JavaScript:

break

comment

continue

for

for...in

function

if...else

return

var

while

with

Оператор break

Оператор Прерывает текущий цикл for и while, передавая управление первому оператору после цикла.

Применение оператора

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

function CheckValues(form){

var total

for (I=0; I<=form.elements.length; I++){

if (element[I].value="0"){

break;}

else{

total +=I;

document.write("Текущая строка: "+total);}

}

return total

}

Оператор comment

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

  • Однострочные комментарии начинаются с символа (//).

  • Многострочные комментарии начинаются /* и заканчиваются */.

Примеры

/*Начало комментария,

а здесь

заканчивается.*/

...строки кода...

// Однострочный комментарий

Оператор continue

Передает управление оператору проверки истенности условия в цикле while и оператору обнавления значения счетчика в цикле for. Важное отличее от оператора break заключается в том, что оператор continue не прерывает цикл, а делает следующее.

  • В цикле while, это переходит назад к условию.

  • В цикле for, это переходит к модернизированному выражению.

Синтаксис

Continue

Примеры

Следующий пример демострирует цикл while, содержащий оператор continue, который выполняется, когда переменная i равна 3.

i = 0

n = 0

while (i

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

function CheckValues(form){

var total

for (I=0; I<=form.elements.length; I++){

if (element[I].value

Оператор for

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

for (initialExpression;condition;updateExpression)

{

...строки кода...

}

где

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

  • Выражение condition, которое вычисляется на каждом проходе через цикл. Если это условие истинно, то выполняются условия внутри цикла. Это условие необязательно. Если оно опущено, то условие всегда считается равным истинному, тогда цикл продолжается до ошибки или до оператора break.

  • Выражение updateExpression, вообще используется для изменения значения переменной счетчика. Оно тоже является необязательным. В этом случае можно обновлять значение переменной счетчика внутри цикла.

Примеры

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

for (var i = 0; i < 9; i++)

{

n += i

myfunc(n)

}

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

for (var i = 0; ; i+=2)

{

...строки кода...

}

Продемонстрируем пример,который представляет цикл, не обнавляющий счетчик. Если счетчик нигде не будет обновлен в теле цикла, его значение так и останется равным 0:

for (var i = 0; i < 10;)

{

...строки кода...

}

Оператор for...in

Присваевает переменной поочередно все свойства объекта. Для каждого свойства цикл for...in выполняет операторы, содержащиеся в теле цикла:

for (var in obj)

{

...statements...

}

Примеры

Цикл for...in является полезным средством для отладки благодаря своей способности вывести на экран все свойства объекта в одном цикле.

fanction objectDisplay(obj) {

var displayLine;

for (var prop in obj) {

displayLine =obj.name+"."+prop+"="+obj[prop];

document.write(displayLine+" ")

}

document.write("End of object"+obj.name)

}

Оператор function

Объявляет функции языка JavaScript, требует указания имени name и списка параметров param. Для того чтобы возвращать значение, функция должна иметь в себе оператор return, который указывает возвращаемое функцией значение. Оператор функция вы не можете вложить в другую функцию. Принято следующее написание этого оператора:

function name([param] [, param] [..., param])

{

...statements...

}

Примеры

Эта функция возвращает общую долларовую сумму продажи, когда дано число единиц, продаваемых изделий a, b, и c.

function calc_sales(units_a, units_b, units_c) {

return units_a*79 + units_b*129 + units_c*699}

Оператор if...else

Оператор if...else - это условный оператор, который выполняет первый набор утверждений, если значение condition истинно. В противном случае выполняет второй набор утверждений, заключенные в операторе else, если условие ложно. Если набор утверждений (statments), заключенные в фигурные скобки {} содержит один оператор, то скобки можно опустить. Условные операторы могут быть вложены друг в друга без ограничений.

if (condition) {

...statements...

}[else {

else

...statements...

}]

Примеры

Следующая функция преобразует значение минут текущего временив двузначное число для использования в программе "Часы":

fanction makeMinutes() {

var minstring="";

var now = new Date();

var min = Date.getMinutes();

if (min

Оператор return

Орератор return указывает значение, которое будет возвращено функцией.

return expression;

Примеры

Следующая функция возвращает квадрат ее аргумента, x, где x - это число:

function square( x ) {

return x * x

}

Ниже приведенный пример соединяет три строки вместе, используя в качестве разделителя запятую:

function stringAssemble(string1,string2,string3) {

return string1+","+string2+","+string3

}

Оператор var

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

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

var VariableName [= value] [..., VariableName [= value] ]

Примеры

var num_hits = 0, cust_no = 0

Приведем пример, когда переменная globalString может быть использована в любой функции или скрипте текущего документа, а переменная localString видна только внутри функции bracket:

var globalString

function bracket(){

var localString="["+globalString+"]";

document.write(localString);

}

Оператор while

Оператор while - это оператор цикла, который повторяет цикл, пока значение condition есть истинно (true). Как только значение condition становится ложным (false), то управление переходит к первому оператору после фигурной скобки, закрывающей тело цикла while:

while (condition) {

...statment...

}

Примеры

Следующий цикл while повторяется, пока переменная n меньше чем три. Каждая итерация увеличивает n и прибавляет его к x. Следовательно, x и n пренимают следующие значения:

  • После первой итерации: x = 1 , n = 1

  • После второго итерации: x = 2 , n = 3

  • После третьего итерации: x = 3 , n = 6

После завершения третьей итерации, условие n < 3 становится ложным, следовательно цикл прекращается.

n = 0

x = 0

while( n < 3 ) {

n ++; x += n

}

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

var found=false

n=0

while (n<=searhcString.length II !found) {

if (searhcString.charAt[n]=="?")

found = true

else

n++;

}

Оператор width

Оператор width устанавливает объект по умолчанию для набора операторов. Любые ссылки на свойства без явного указания объекта предполагают объект по умолчанию. Заметьте, что круглые скобки требуются вокруг объекта.

with (object) {

...statment...

}

Примеры

Оператор width особенно полезен при ссылках на объект Math в процессе вычислений.Например:

with (Math) {

a = PI * r*r

x = r * cos(theta)

y = r * sin(theta)

}