- •Саратовский государственный технический университет
- •Введение
- •Три уровня web-документа
- •Навигация
- •Глава 1. Основы Java Script
- •Рекомендации по использованию JavaScript
- •Добавление JavaScript кода в html документы
- •Сокрытие сценариев от устаревших браузеров
- •Определение языка сценариев
- •Атрибут language
- •Атрибут defer
- •1.2. Ввод и вывод данных
- •Alert(сообщение);
- •Confirm(сообщение);
- •Вывод в тело документа
- •Практические задания
- •1.3. Типы данных и значения
- •Целые литералы
- •Шестнадцатеричные и восьмеричные литералы
- •Литералы вещественных чисел
- •Работа с числами
- •Специальные числовые значения
- •Строковые литералы
- •Управляющие последовательности в строковых литералах
- •Преобразование чисел в строки
- •Логические значения
- •Преобразование логических значений
- •Функции
- •Функциональные литералы
- •Объекты
- •Объектные литералы
- •Значение null
- •Значение undefined
- •Объекты Error
- •Преобразование типов
- •Имена переменных
- •Создание переменных
- •Var имя_переменной;
- •Типизация переменных
- •Область видимости переменной
- •Var X; // Объявляем неинициализированную переменную. Значением ее является undefined
- •Элементарные и ссылочные типы
- •Комментарии
- •Арифметические операторы
- •Операторы сравнения
- •Операторы сравнения
- •Оператор in
- •Оператор instanceof
- •Строковые операторы
- •Логические операторы
- •Присваивание с операцией
- •Условный оператор (?:)
- •Оператор typeof
- •Оператор создания объекта (new)
- •Оператор delete
- •Глава 2. Инструкции Java Script
- •Инструкция if - оператор условного перехода
- •If (условие)
- •If (условие1) {
- •If (!х) {// Если переменная username равна null, undefined, 0, "" или NaN, она
- •If (!X) alert('Bы ничего не ввели")
- •Инструкция else if
- •Инструкция switch
- •Практические задания
- •Операторы цикла
- •Инструкция while
- •Цикл do/while
- •Инструкция for
- •I f (условие2){
- •Инструкция for/in
- •Инструкция break
- •Инструкция continue
- •Практические задания
- •Инструкция var
- •Инструкция function
- •Инструкция return
- •Инструкция throw
- •Инструкция try/catch/finally
- •Инструкция with
- •Пустая инструкция
- •Глава 3 Объекты
- •Создание объектов
- •Свойства объектов
- •Объекты как ассоциативные массивы
- •Свойства и методы универсального класса Object
- •Объект String (Строка)
- •Методы String обработки строк
- •X.Split(" ") /* значение - массив из элементов: "Привет", "всем" */
- •Методы String форматирования строк
- •Функции вставки и замены подстрок
- •Insstr ("Привет, друзья", " мои", 7) // "Привет, мои друзья"
- •Insstr("Привет, друзья", " мои", 100) // "Привет, друзья мои"
- •Практическое задание
- •Массивы
- •Чтение и запись элементов массива
- •Добавление новых элементов в массив
- •Длина массива
- •Многомерные массивы
- •Методы массивов
- •Функции обработки числовых массивов
- •Практическое задание
- •Практические задания
- •Объект Date
- •Аргументы
- •Статические методы
- •Практические задания
- •Объект Math (Математика)
- •Свойства Math
- •Методы Math
- •Таймеры
- •If (confirm("Прервать процесс ?"))
- •Глава 4 Основы создания сценариев
Практические задания
1. Ввести с экрана значение градусов по Фаренгейту, перевести их в градусы по Цельсию по формуле:
0C=5/9(0F-32)
Указать в зависимости от получившегося значения, в каком состояии находится вода: лед, холодная вода, теплая вода, горячая вода, пар.
Выполнить решение с помощью условного оператора и оператора выбора.
2. Укажите название месяца в зависимости от его номера в году.
Операторы цикла
Оператор цикла обеспечивает многократное выполнение блока программного кода до тех пор, пока не выполнится некоторое условие. В JavaScript предусмотрены три оператора цикла: for, while и do-while. Вообще говоря, при создании программ вполне можно обойтись одним из них, однако возникают ситуации, в которых один из операторов более удобен или естествен, чем другой.
Инструкция while
Так же как инструкция if является базовой управляющей инструкцией, позволяющей интерпретатору JavaScript принимать решения, инструкция while – это базовая инструкция, позволяющая JavaScript выполнять повторяющиеся действия. Она имеет следующий синтаксис:
while (выражение)
тело цикла
Инструкция while начинает работу с вычисления выражения. Если оно равно false, интерпретатор JavaScript переходит к следующей инструкции программы, а если true, то исполняется инструкция, образующая тело цикла, и выражение вычисляется снова. Цикл продолжается, пока выражение не станет равно false, тогда инструкция while завершит работу и JavaScript пойдет дальше. С помощью синтаксиса while(true) можно записать бесконечный цикл.
Обычно не требуется, чтобы интерпретатор JavaScript снова и снова выполнял одну и ту же операцию. Почти в каждом цикле с каждой итерацией цикла одна или несколько переменных изменяют свои значения. Поскольку переменная меняется, действия, которые выполняет инструкция, при каждом проходе тела цикла могут отличаться. Кроме того, если изменяемая переменная (или переменные) присутствует в выражении, значение выражения может меняться при каждом проходе цикла. Это важно, т. к. в противном случае выражение, значение которого было равно true, никогда не изменится и цикл никогда не завершится!
Примеры цикла while:
var count = 0;
while (count < 10) {
document.write(count + "<br>");
count++;
}
В начале примера переменной count присваивается значение 0, а затем ее значение увеличивается каждый раз, когда выполняется тело цикла. После того как цикл будет выполнен 10 раз, выражение становится равным false (т.е. переменная count уже не меньше 10), инструкция while завершается и JavaScript может перейти к следующей инструкции программы.
/* Ввычисляем n! */
var z = 1;
if (n >1) {
i = 2;
while ( i <= n ) {
z=z*i;
// z хранит результат n!
}
}
Для управления вычислительным процессом в операторе while можно использовать операторы прерывания break и продолжения continue.
Цикл do/while
Цикл do/while во многом похож на цикл while, за исключением того, что выражение цикла проверяется в конце, а не в начале цикла. Это значит, что тело цикла исполнится хотя бы один раз. Синтаксис его таков:
do
инструкция
while (выражение);
Цикл do/while используется реже, чем родственный ему цикл while. Дело в том, что на практике ситуация, когда требуется хотя бы однократное исполнение цикла, несколько необычна. Например:
function printArray(a) {
if (a.length == 0)
document.write("Пустой массив");
else {
var i = 0;
do {
document.write(a[i] + "<br>");
} while (++i < a.length);
}
}
Между циклом do/while и обычным циклом while есть два отличия. Во-первых, цикл do требует как ключевого слова do (для отметки начала цикла), так и ключевого слова while (для отметки конца цикла и указания условия). Во-вторых, в отличие от цикла while, цикл do завершается точкой с запятой. Причина в том, что цикл do завершается условием цикла, а не просто фигурной скобкой, отмечающей конец тела цикла.
Пример:
/* Вычисляем х в степени у */
var z = х;
i = 2;
do{ z=z*x;
i++;
}
while (i <= y)
Рассмотрим пример вычисления факториала числа. Факториал числа n в математике обозначают как n!. Для n, равного 0 и 1, n! равен 1. В остальных случаях n! равен 2*3*4* ... *n.
/* Вычисляем n! */
var z = 1;
if (n >1) { i = 2;
do {
z=z*i; // z хранит результат n!
i++;
}
while ( i <= n )
}