- •Саратовский государственный технический университет
- •Введение
- •Три уровня 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 Основы создания сценариев
Инструкция for
Цикл, начинающийся с инструкции for, часто оказывается более удобным, чем while. Инструкция for использует шаблон, общий для большинства циклов. Большинство циклов имеют некоторую переменную-счетчик. Эта переменная инициализируется перед началом цикла и проверяется в выражении, вычисляемом перед каждой итерацией цикла. И, наконец, переменная-счетчик инкрементируется или изменяется каким-либо другим образом в конце тела цикла, непосредственно перед повторным вычислением выражения.
Инициализация, проверка и обновление – это три ключевых операции, выполняемых с переменной цикла; инструкция for делает эти три шага явной частью синтаксиса цикла. Синтаксис цикла for:
for(инициализация; проверка; инкремент)
инструкция
или, по другому:
for ( [начальное выражение] ; [условие] ; [выражение обновления] )
{
код
}
Здесь квадратные скобки лишь указывают на то, что заключенные в них параметры не являются обязательными. Все, что находится в круглых скобках справа от ключевого слова for, называется заголовком оператора цикла, а содержимое фигурных скобок — его телом.
Выражение инициализация вычисляется один раз перед началом цикла. JavaScript также допускает, чтобы выражение инициализация было инструкцией объявления переменной var, поэтому можно одновременно объявить и проинициализировать счетчик цикла.
Выражение проверки вычисляется перед каждой итерацией и определяет, будет ли выполняться тело цикла. Если результат проверки равен true, выполняется тело цикла.
В конце цикла вычисляется выражение инкремента (шага цикла). Обычно это либо выражение присваивания, либо выражение, использующее оператор ++ или --.
Пример цикла, выводящий числа от 0 до 9:
for(var count = 0; count < 10; count++)
document.write(count + "<br>");
Обратите внимание, что этот синтаксис помещает всю важную информацию о переменной цикла в одну строку, делая работу цикла более понятной. Кроме того, помещение выражения инкремента в инструкцию for само по себе упрощает тело цикла до одной инструкции; нам даже не потребовалось ставить фигурные скобки для формирования блока инструкций.
Конечно, циклы могут быть значительно более сложными, чем в этих простых примерах, и иногда на каждой итерации цикла изменяется несколько переменных. Эта ситуация – единственный случай в JavaScript, когда часто применяется оператор «запятая» – он позволяет объединить несколько выражений инициализации и инкрементирования в одно выражение, подходящее для использования в цикле for. Например:
for(i = 0, j = 10; i < 10; i++, j--)
sum += i * j;
Вычислим сумму всех целых положительных чисел от 1 до 15:
var s = l
for (i = 1; i <= 15; i++) {
s = s + i
}
Заметим, что счетчик циклов может быть не только возрастающим, но и убывающим.
/* Вычисляем n! */
var z = 1 // z хранит результат n!
if (n >1) {
for (i = 2 ; i <= n;i++){
z=z*i; }}
Для принудительного (то есть не по условию) выхода из цикла используется оператор break (прерывание). Если вычислительный процесс встречает этот оператор в теле оператора цикла, то он сразу же завершается без выполнения последующих выражений кода в теле и даже выражения обновления. Обычно оператор break применяется при проверке некоторого дополнительного условия, выполнение которого требует завершения цикла, несмотря на то, что условие в заголовке цикла еще не выполнено. Типовая структура оператора цикла с использованием break имеет следующий вид:
for ( [начальное выражение] ; [условие1] ; [выражение обновления] )
{ код