
- •Клиент-серверная информационная система
- •Инструментальные средства для разработки клиентской части
- •Что такое javascript?
- •Что умеет JavaScript?
- •Большинство возможностей JavaScript
- •Уникальность javascript
- •Подключение и выполнение javascript
- •Обычно javascript-код вообще не пишут в HTML, а подключают отдельный файл со скриптом,
- •Чувствительность к регистру
- •Символы разделители и переводы строк
- •Необязательные точки с запятой
- •Идентификаторы
- •Комментарии в JavaScript
- •Ввод и вывод данных
- •alert
- •confirm
- •prompt
- •Создание переменных
- •Типы данных
- •Типы данных
- •Типы данных
- •Значение undefined
- •Арифметические
- •Операторы сравнения
- •Логические операторы
- •Операторы условного перехода
- •Оператор switch
- •Операторы цикла
- •Оператор while
- •Оператор do-while
- •Оператор for
- •Инструкция for/in
- •Функции
- •function square(x)
- •Функцию можно задать с помощью функционального литерала:
- •Метод document.write
- •Оператор continue.
- •Оператор break.
- •Оператор typeof
- •Оператор in
- •Инструкция

Оператор typeof
Унарный оператор typeof помещается перед единственным операндом, который может иметь любой тип. Его значение представляет собой строку, указывающую тип данных операнда.
Результатом оператора typeof будет строка "number", "string" или "boolean", если его операндом является число, строка или логическое значение соответственно.
Для объектов, массивов результатом будет строка "object".
Для операндов функций результатом будет строка “function”, а для неопределенного операнда – строка “undefined”

Оператор in
Синтаксис prop in object
Аргументы
prop Строка или числовое выражение, являющееся именем свойства или индексом массива
object Объект для поиска в нем свойства или массив - для проверки индекса
Описание, примеры
Оператор in возвращает true, только если данное свойство присутствует в объекте или его прототипе.
Пример: массив arr = [ "a", "b", "c"] 1 in arr // true
22 in arr // false delete arr[1]
1 in arr // false : элемент удален

Инструкция
try/catch/finally
Инструкция try/catch/finally реализует механизм обработки исключений в JavaScript. Конструкция try в этой инструкции просто определяет блок кода, в котором обрабатываются исключения. За блоком try следует конструкция catch с блоком инструкций, вызываемых, когда гделибо в блоке try возникает исключение. За конструкцией catch следует блок finally, содержащий код зачистки, который гарантированно выполняется независимо от того, что происходит в блоке try. И блок catch, и блок finally не являются обязательными, однако после блока try должен обязательно присутствовать хотя бы один из них. Блоки try, catch и finally начинаются и заканчиваются фигурными скобками. Это обяза тельная часть синтаксиса и она не может быть опущена, даже если между ними содержится только одна инструкция.

try {
//Обычно этот код без сбоев работает от начала до конца.
//Но в какой-то момент в нем может генерироваться исключение
//либо непосредственно с помощью инструкции throw, либо косвенно
//вызовом метода, генерирующего исключение.
}
catch (e) {
//Инструкции в этом блоке выполняются тогда и только тогда, когда в блоке try генерируется исключение.
//Эти инструкции могут использовать локальную переменную e, ссылающуюся на объект Error
//или на другое значение, указанное в инструкции throw. Этот блок может
//либо какимлибо образом обработать исключение, либо проигнорировать
//его, делая чтото другое, либо заново сгенерировать исключение
//с помощью инструкции throw.
}
finally {
//Этот блок содержит инструкции, которые выполняются всегда, независимо от того,
//что произошло в блоке try. Они выполняются, если блок try прерван:
//1) нормальным образом, достигнув конца блока
//2) изза инструкции break, continue или return
//3) с исключением, обработанным приведенным ранее блоком catch
//4) с неперехваченным исключением, которое продолжает свое
//распространение на более высокие уровни
}

try {
// Просим пользователя ввести число
var n = prompt("Введите положительное число", "");
// Вычисляем факториал числа, предполагая, что входные данные корректны
var f = factorial(n);
// Показываем результат
alert(n + "! = " + f);
}
catch (ex) {
//Если введенные данные некорректны, мы попадем сюда
//Сообщаем пользователю об ошибке
alert(ex);
}