Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Веб программирование.Начало.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
6.96 Mб
Скачать

5.2.2 Операторы и выражения

Выражения или операторы на одной строке программы JavaScript разделяются точ­кой с запятой; если выражения находятся на разных строках, то точка с запятой может и не ставиться. В этом отличие от языков C++ и Java, в которых точкой с запятой используется для завершения операторов. Точка с запятой является пустым оператором.

Несколько выражений могут объединяться в блок с помощью фи­гурных скобок { }, однако блоки не определяют область видимости и время жизни переменных, как в С++ .

Оператор присваивания

Значение присваивается одной переменной или сразу нескольким переменным, поскольку "=" является оператором:

var n = j = k = 2;

Арифметические операторы

В языке JavaScript поддерживаются арифметические операторы: «+», «-», «*», «/», «%», <<+=>>, << -=>>, ...

Операция деления выполняется следующим образом:

var y=6/4; //1.5

var z=6%4;//остаток от деления - 2

Так как оператор сложения "+" является перегружаемым, при работе со строками он означает конкатенацию последних s = "str1" + "str2".

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

var w="12"+3;//123

var x="5"*"20";//100

var v="12"-3;//9

alert(""+x+v+w);

Операция инкремента «++», служит для прибавления 1 к операнду, декремент «--» – используется для вычитания 1 от операнда.

Операторы сравнения

В JavaScript поддерживаются следующие операторы сравнения:

«<», «<=», «>», «>=», «!=», «==» – равно; «===» – равно и операнды одинакового типа (тождественно равно, строгое сравнение); «!==» – не равно или операнды разных типов.

Для иллюстрации оператора строгого сравнения приведем пример:

var x = 0;

var y = false;

alert(x==y); //true из-за приведения операндов к одному типу

alert(x===y);// false, так как операнды разных типов.

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

В языке JavaScript поддерживаются следующие логические опера­торы:

«&&» – логическое И; «||» – логическое ИЛИ; «!» – логическое НЕ.

Оператор «?»

Оператор «?» возвращает значение первого выражения, если усло­вие истинно, и второго выражения, если условие ложно при синтаксисе:

условие ? выражение1 : выражение2;

Пример использования:

var x = 6; var y = 9;

var res = x < y ? "x меньше y" : "x больше или равно y";

alert(res);

//выведет экран фразу «x меньше y»

Оператор typeof

Оператор typeof операнд возвращает строковое значение, которое определяет тип операнда: "number", "string", "boolean", "object", "function" и "undefined".

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

Оператор имеет следующий вид:

if (условие)

// выражение или блок выражений

else

//выражение или блок выражений

Ветка else может отсутствовать.

Операторы организации циклов

Ниже приведен синтаксис для организации циклов. Цикл выполня­ется, пока значение логического выражения равно true

1. while (условие){

// выражение или блок выражений

}

2. do

// выражение или блок выражений

while (условие);

3.Цикл for имеет синтаксис:

for (нач_значения; условие; изменение_нач_значений){

//выражение или блок выражений

}

Пример цикла for показан ниже:

<!-- пример pr8 -->

<html>

<body>

<script type="text/javascript">

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

alert(i );

}

//на экран последовательно будут выведены числа:0 1 2 3

document.write("i=",i);// i=4

</script>

</body>

</html>

4. Оператор цикла for…in служит для просмотра всех свойств в объекте(массиве) и присваивания их значений переменной. При этом изменять значения элементов нельзя.

for (имя_переменной in объект)

{ выражение или блок выражений}

Пример.

var a=[1,2,3,4,5];

for(x in a) alert(x);

Рассмотрим более сложный пример перебора всех стилей элемента:

<!-- пример pr9 -->

<html> <head>

<style type=text/css>

#myP{color:green;

font-style: italic;

font-variant:normal;

font-weight: bold;

font-size: 30px;

font-family: arial, sans-serif;}

</style>

</head>

<body>

<p id="myP">test</p>

<script type="text/javascript">

var obj;

for (obj in document.getElementById("myP").style) {

alert(obj+'='+document.getElementById("myP").style[obj]);

}

</script>

</body></html>

Цикл выведет все свойства объекта style элемента myP.

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