- •Федеральное государственное учреждение
- •©Российская таможенная академия, 2008
- •Ростовский филиал
- •© Крицкий с.П.
- •Содержание
- •Введение
- •Основные понятия программирования
- •Классификация языков программирования
- •Характеристика систем программирования на языкахJavaScript/Jscript
- •Типы значений в языкеJavaScript
- •Числовые литералы и значения и их организация в памяти Литералы целых чисел
- •Литералы вещественных чисел (чисел с плавающей точкой)
- •Логические литералы и значения и их организация в памяти
- •Строковые литералы, значения и их организация в памяти
- •Массивы и их организация в памяти. Многомерные массивы, матрицы
- •Записи и их организация в памяти
- •Операции над различными типами данных
- •Арифметические операции
- •Строковые операции
- •Логические операции
- •Операции сравнения
- •Операции выборки
- •Переменные, выражения, условия Переменные
- •Выражения
- •Вызовы функций и методов
- •Порядок вычисления выражения
- •Операции присваивания
- •Автоматическое преобразование типов значений. Функции преобразования и проверки типов
- •Ввод и вывод значений
- •Понятие оператора. Простые и составные операторы. Блок-схемы программ и модулей Операторы и модули
- •Блок-схемы
- •Составные операторы (последовательность, условные). Их синтаксис, блок-схемы и правила выполнения Последовательность операторов
- •Условный операторif … else
- •Операторы цикла (while, do-while и for). Их синтаксис, блок-схемы и правила выполнения. Операторыbreakиcontinue Оператор циклаwhile
- •Операторbreak
- •Операторcontinue
- •Оператор циклаdo…while
- •Оператор циклаfor
- •Функции. Определение и вызов. Выход из функцииreturn. Массив аргументовarguments Определение функции – операторfunction
- •Выход из функции – операторreturn
- •Определение переменной – операторvar
- •Отладка программ. Трассировка, отладочная печать. Тестирование программы
- •Основные понятия объектного подхода
- •ОбъектMath, назначение, свойства, методы. Значения NaN, Infinity, null, undefined.
- •Свойства объектаMath– константы:
- •Методы объекта Math
- •Специальные константы
- •Массивы как объекты в языкеJavaScript. Конструкторы, свойства и методы массивов. Задача копирования массива вJavaScript
- •Конструктор объектов типаArray
- •Свойство объектов типаArray
- •Методы объектов типаArray
- •Типичные задачи с массивами: линейная алгебра
- •Скалярное произведение векторов
- •Произведение матриц
- •Транспонирование квадратной матрицы
- •Типичные задачи с массивами: сортировка. Сортировка вставками. Методsort
- •Сортировка вставками
- •Методsort
- •Типичные задачи с массивами: поиск. Двоичный поиск в упорядоченном массиве
- •Обработка строк. Конструкторы, свойства, методы строк
- •Конструктор объектов типаString
- •Свойство объектов типаString
- •Методы объектов типаString
- •Шаблоны и регулярные выражения. Их использование методами строк.
- •Простые шаблоны
- •Составные шаблоны
- •Пользовательский интерфейс программ. Общее понятие
- •Html-страница как средство интерфейса для программ на языкеJavaScript. Тэги и атрибутыHtml
- •ОбъектыHtml-страниц иWeb-браузера, их свойства и методы. События и их обработка Объектные модели
- •Объекты страницы
- •Объекты браузера
- •СтилиHtml-объектов. Свойства позиционирования объектов страницы
- •Таймеры, примеры использования
- •Понятие ссылочной структуры данных. Односвязный список. Запись списков с помощью литералов.
- •Понятие стека. Функции для стека
- •Двухсвязный список, его структура
- •Понятие очереди и дека, их организация
- •Понятие дерева как ссылочной структуры. Бинарные деревья. Представление дерева литералом
- •Обработка деревьев. Рекурсия
- •Обход дерева «в глубину»
- •Обход дерева «в ширину»
- •Файлы и файловая система
- •Работа с текстовыми файлами
- •Объекты типа TextStream
- •Управление файлами и папками
- •Коллекции дисков, папок и файлов
- •Технология и методология создания программ
- •Жизненный цикл программы
- •Организация процесса разработки
- •Методологии проектирования программ
- •Заключение
- •Приложение 1. Теги, атрибуты и соответствующие свойства Общая структура html-документа
- •Форматирование текста
- •Вставка графики
- •Гиперссылки и карты
- •Приложение 2. События вHtmLи их источники
- •Приложение 3. Атрибуты и свойства стилейCss
- •Приложение 4. Работа с файловой системой вJScript
- •Свойства, методы и коллекции объектов файловой системы
- •Список литературы
- •Словарь терминов
- •If (условие) оператор1 [else оператор2]
- •Основы программирования
Литералы вещественных чисел (чисел с плавающей точкой)
Вещественные числа в языке JavaScript записываются только в десятичной системе и состоят из следующих друг за другом частей (без каких бы то ни было разрывов и пробелов):
возможный знак числа
целая часть
. (точка)
дробная часть
латинская буква e или E («экспонента» – признак порядка)
возможный знак порядка
порядок
Здесь целая часть, дробная часть и порядок – произвольные последовательности десятичных цифр (0 – 9). Всё изображённое литералом число – это число, изображённое перед порядком, умноженное на 10n, где n – это порядок со своим знаком.
Во всей этой записи вещественного числа обязательно должны присутствовать только хоть одна цифра в целой или дробной части и точка или порядок (вместе с e). Так, литералами вещественного числа 0 являются 0., .0, 0е1. В них уже нельзя удалить ни одного символа.
Например, число –3.14 можно записать в виде литералов
–3.14, –0.314e1, –.314e+1, –314E-2, -314.0e-2, -314.e-2
В памяти числа занимают одну ячейку и представлены, как на рис 1а.
Логические литералы и значения и их организация в памяти
Значения, обозначаемые литералами true, false, называются логическими (или булевскими – по имени английского математика Джорджа Буля) константами ИСТИНА и ЛОЖЬ (или И и Л), соответственно. Они часто представляются, как числа 1 (ИСТИНА) и 0 (ЛОЖЬ) и занимают одну ячейку (рис. 1а). Логические значения появляются, в основном, при проверке условий, влияющих на выбор следующего шага алгоритма.
Строковые литералы, значения и их организация в памяти
Строкой в программировании называется любая последовательность символов (любого алфавита), т.е. текст. В языке JavaScript строки
Литерал строки – это строка, взятая в кавычки ("Строка") или апострофы ('Строка'), обозначающие начало и конец строки. Строка может быть пустая (литерал "" или ''). Литерал строки должен полностью размещаться в одной строке текста программы.
В литерале строки символ \ (обратный слэш) используется не сам по себе, а для указания, как понимать следующие за ним символы. Правила его использования приведены в следующей таблице:
|
Символы литерала |
Символы строки |
Примеры |
Примечания |
|
\" |
" |
"Яхта \"Стрела\""– литерал строкиЯхта "Стрела". Ту же строку можно было записать литералом 'Яхта "Стрела"' |
\указывает, что следующий символ изображает сам себя как символ строки, а не играет вспомогательной роли. |
|
\' |
' |
'Яхта \'Стрела\''– литерал строкиЯхта 'Стрела'. Ту же строку можно было записать литералом "Яхта 'Стрела'" | |
|
\\ |
\ |
"Ленин \\Ульянов\\"– литерал строкиЛенин \Ульянов\ | |
|
\xDD Здесь D– шестнадцатеричная цифра (1-9,A-F) |
Символ, шестнадцатеричный ASCII-код которого равенDD |
Символы литерала \хА9обозначают символ строки©. Символы литерала \хС4обозначают символ строкиÄ. |
Применяется, когда символов нет на клавиатуре. Коды символов можно получить, например, в Word’е, используя менюВставка/Символ. |
|
\uDDDD Здесь D– шестнадцатеричная цифра |
Символ, шестнадцатеричный код которого в кодировке UnicodeравенDDDD |
Символы литерала \u00А9обозначают символ строки©. Символы литерала \u00С4обозначают символ строкиÄ.
| |
|
\n |
Переход на новую строку |
alert('111\n222')напечатает две строки: 111 222 |
Применяются вместо ASCII-кодов символовновая строкаитабуляция. |
|
\t |
Символ табуляции, вызывающий отступ на фиксированную позицию |
alert('i\tiii\nMMM\tMM')напечатает две строки: i iii MMM MM Применяется для отступов и таблиц. |
Строка может занимать больше одной ячейки памяти, но представлена, как простое значение.
