
- •Вопрос 1. Язык JavaScript. Объекты. Базовые определения языка.
- •Базовые определения
- •Вопрос 2. Структура программ на JavaScript. Идентификаторы, переменные, константы. Структура программ на языке JavaScript.
- •Идентификаторы
- •Переменные Декларация переменных
- •Область действия переменных
- •Константы
- •Строковые константы
- •Числовые константы
- •Вопрос 3. Выражения и операции. Операции сравнения Выражения и операции
- •Операции сравнения
- •Вопрос 4. Выражения и операции. Арифметические операции Выражения и операции
- •Арифметические операции
- •Вопрос 5. Выражения и операции. Битовые и логические операции Выражения и операции
- •Битовые операции
- •Логические операции
- •Вопрос 6. Выражения и операции. Строковые операции, операции присваивания, условная операция Выражения и операции
- •Строковые операции
- •Операции присваивания
- •Условная операция
- •Вопрос 7. Выражения и операции. Операции new, this. Порядок следования операций Выражения и операции
- •Операция new
- •Операция this
- •Порядок выполнения операций
- •Вопрос 8. Операторы JavaScript. Оператор выбора и условный оператор Операторы JavaScript
- •Условный оператор
- •Оператор выбора
- •Вопрос 9. Операторы JavaScript. Операторы цикла Операторы JavaScript
- •Операторы цикла
- •Оператор for
- •Оператор while
- •Оператор do…while
- •Вопрос 10. Функции. Декларация и вызов функций Декларация функции
- •Вызов функции
Вопрос 1. Язык JavaScript. Объекты. Базовые определения языка.
JavaScript — это объектно-ориентированный язык программирования, предназначенный для написания сценариев, работающих как на стороне клиента, так и на стороне сервера. Поэтому он не является "полноценным" языком программирования, а ориентирован на использование возможностей той среды, в которой сценарии исполняются.
Веб-обозреватель, работающий на компьютере-клиенте, обеспечивает среду, в которой JavaScript имеет доступ к объектам, которые представляют собой окна, меню, диалоги, текстовые области, фреймы, куки и ввод-вывод в Веб-страницу. Кроме того, обозреватель позволяет присоединить сценарии на языке JavaScript к таким событиям, как загрузка и выгрузка страниц и графических образов, нажатие клавиш и движение мыши, выбор текста и пересылка форм. При этом программный код сценариев только реагирует на события и поэтому не нуждается в главной программе. Набор объектов, предоставляемых обозревателем, известен под названием Document Object Model (DOM). Веб-сервер обеспечивает иную среду, в которой объектами являются запросы к базам данных, клиенты, файлы и механизмы блокировки и совместного использования данных. Совместное использование сценариев и на стороне клиента, и на стороне сервера позволяет распределить вычисления между ними и обеспечить желаемый пользовательский интерфейс для Веб-приложения. Мы сосредоточимся на тех возможностях языка, которые используются сценариями клиента.
JavaScript — это язык программирования, основанный на объектах: и языковые средства, и возможности среды представляются объектами, а сценарий (программа) на JavaScript — это набор взаимодействующих объектов. Объект JavaScript — это неупорядоченный набор свойств, каждое из которых имеет нуль или более атрибутов, которые определяют, как это свойство может использоваться. Свойства — это контейнеры, которые содержат другие объекты, примитивные значения и методы. Примитивное значение — это элемент любого из встроенных типов: Undefined, Null, Boolean, Number и String; объект — это элемент еще одного встроенного типа Object; метод — функция, ассоциированная с объектом через свойство. JavaScript содержит несколько встроенных объектов, таких, как Global, Object, Error, Function, Array, String, Boolean, Number, Math, Date, RegExp. Кроме того, JavaScript содержит набор встроенных операций.
Базовые определения
После краткого описания языка JavaScript дадим неформальные определения его основных понятий.
Тип
Набор значений данных.
Примитивное значение
Элемент одного из типов Undefined, Null, Boolean, Number или String. Примитивные значения — это данные, которые представляются непосредственно и на самом нижнем уровне реализации языка.
Объект
Элемент типа Object; является неупорядоченным набором свойств, каждое из которых может быть примитивным значением, объектом или функцией. Свойство, являющееся функцией, называется методом.
Конструктор
Функция, которая создает и инициализирует объекты. Каждый конструктор имеет соответствующий прототип, который используется для наследования и разделения свойств.
Прототип
Объект, который используется в JavaScript для реализации наследования структуры, состояния и поведения. Когда конструктор создает объект, последний содержит неявную ссылку на прототип конструктора, позволяющий разрешать ссылки на свойства данного объекта. Свойства прототипа разделяются всеми объектами, созданными на его основе.
Объект языка
Любой объект, который поддерживается реализацией языка JavaScript, а не средой исполнения сценариев. Часть объектов языка являются встроенными; другие создаются в процессе выполнения сценария.
Встроенный объект
Любой объект, который поддерживается реализацией языка JavaScript независимо от среды исполнения и существующий на момент начала исполнения сценария. Все встроенные объекты являются объектами языка.
Объект среды
Любой объект, который не является объектом языка, а поддерживается средой исполнения сценариев.
Неопределенное значение
Примитивное значение, которое означает, что переменной не присвоено никакого значения.
Нулевое значение
Примитивное значение, которое означает нулевую, пустую или несуществующую ссылку.
Логическое значение
Примитивное значение типа Boolean, означающее истину или ложь.
Логический объект
Элемент типа Object, который является экземпляром встроенного логического объекта. Иными словами, логический объект создается выражением new Boolean(value), где value — логическое значение. Результирующий объект имеет неявное (безымянное) свойство типа Boolean.
Строковое значение
Элемент типа String. Предсталяет собой строку символов, т. е. упорядоченный массив из нуля или более символов Unicode (т. е. 16-битовых целых чисел без знака).
Строковый объект
Элемент типа Object, который является экземпляром встроенного строкового объекта. Иными словами, строковый объект создается выражением new String(value), где value — строковое значение. Результирующий объект имеет неявное (безымянное) свойство типа String.
Числовое значение
Элемент типа Number. Является непосредственным представлением числа.
Числовой объект
Элемент типа Object, который является экземпляром встроенного числового объекта. Иными словами, числовой объект создается выражением new Number(value), где value — числовое значение. Результирующий объект имеет неявное (безымянное) свойство типа Number.
Бесконечность
Примитивное значение Infinity, являющееся элементом типа Number.
NaN
Примитивное значение NaN (не число), являющееся элементом типа Number.