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

Специальные числа

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

Еще одним важным специальным значением является NaN (not a number). Типичным примером операции, которая возвращает NaN, является деле­ние на ноль. Для определения, является ли значение переменной NaN, используется функция isNaN(), которая возвращает true, если число является действи­тельным (включая бесконечность), и false, если значение переменной NaN.

К специальным числам относятся: Number.MAX_VALUE-максимальное значение числа, Number.MIN_VALUE-минимальное значение числа, Number.NaN - не число, Number.POSITIVE_INFINITY - положительная бесконечность, Number.NEGATIVE_INFINITY - отрицательная бесконечность

Строки

Строковый литерал – это последовательность символов ограниченная двойными или одинарными кавычками. Строка представляет собой объект, который имеет свойство length (длину строки) и большое количество методов, из которых приведем несколько часто употребляемых:

charAt(index : Number) : String – возвращает символ, находящийся на определенной позиции;

concat([string1 : String [, ... [, stringN : String]]]]) : String – соединяет строки (аналогично оператору «+»);

substr(start : Number [, length : Number]) : String – возвращает подстроку, которая начинается с определенной позиции и имеет определенную длину;

substring(start : Number, end : Number) : String – возвращает подстроку, которая начинается и заканчивается в позициях, определенных параметрами.

Булев тип

Переменные булевого типа могут принимать одно из двух значения: true – истина; false – ложь. Переменные булевого типа часто используются в условном операторе if. Пример:

var doAlert = true;

if (doAlert) { alert(“Hello, World!”); }

Переменные типа Undefined и Null

Тип Undefined используется для несуществующих переменных или переменных, значения которых еще не определены. В следующем примере переменная x будет иметь значение Undefined – то есть не определена.

var x;

Тип null означает пустое значение. Пример объявления пустой переменной:

var x = null;

Массивы

В JavaScript массив – это упорядоченная коллекция различных данных. По сути это объект. Его можно объявлять следующим образом:

var myArr = new Array();

Все элементы массива пронумерованы, первый элемент массива имеет нулевой индекс. Доступ к элементу массива осуществляется с помощью квадратных скобок и номера этого элемента. Пример:

myArr[3] = “Hello!”;

var x = myArr[3];

Массив можно создать через присваивание значений, например объявления пустого массива и массива, содержащего данные, имеют вид:

var emptyArr = [];

var filledArr = ["Hello", "World"];

Массивы могут быть многомерными. Объявление и обращение к многомерному массиву выглядит так:

var myArr = [[1,2],[3,4],[5,6]]; // массив размером 3х2

alert(myArr[2][1]);//выводится элемент, равный 6.

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

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

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

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

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

var n = j = k = 2;

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

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

При этом оператор сложения "+" является перегружаемым, при работе со строками он означает конкатенацию последних, например

s = "str1" + "str2"

Операция инкремента «++», служит для прибавления 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 < 8; i++) {

alert(i );

}

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

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

</script>

</body>

</html>

4. Оператор цикла for…in служит для перебора и просмотра всех свойств в объекте:

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

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

Примером может служить перебор всех стилей какого-либо элемента:

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

<html>

<body>

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

<script type="text/javascript">

var objProp;

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

alert(objProp + ' = ' +

document.getElementById("myP").style[objProp]);

}

</script>

</body>

</html>

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

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