
- •Федеральное государственное учреждение
- •©Российская таможенная академия, 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 состоит из операторов. Операторы служат для выполнения каких-то действий. Все операторы являются либо простыми, либо составными.
Простые операторы:
присваивание (см. п. 12),
вызов функции или метода (см. п. 11),
определение переменной (оператор var, см. п. 18),
выход из тела цикла (см. п. 17),
выход из функции (см. п. 18),
пустой оператор (пустой оператор не изображается и не выполняет никаких действий; он используется только иногда для удобства написания программ).
Составные операторы:
последовательности операторов (см. п. 16),
условные операторы (см. п. 16),
операторы цикла (см. п. 17),
определение функции (оператор function, см. п. 18),
оператор with.
Составные операторы построены из других операторов (в конечном счёте – из простых операторов), т.е. являются их композицией.
Большие программы легче писать и понимать, если они разбиты на модули. Модуль – это фрагмент программы, выполняющий чётко определенную задачу и имеющий достаточно простые связи с остальной программой. Разбиение программы на модули и определение связей между ними называется декомпозицией программы.
Для больших модулей также применяется декомпозиция на более мелкие модули. Число модулей, получаемых на каждом шаге декомпозиции, не должно быть очень большим. Обычно требуется, чтобы описание структуры программы и каждого модуля занимало не более одной страницы.
Разработка программы сильно упрощается, если для декомпозиции программы и модулей используются стандартные составные операторы языка. Естественно, что в этом случае компонентами составного оператора могут быть не только операторы, но и модули (точнее, имена модулей).
Функции, определяемые программистом, по существу, являются одним из видов параметризованных модулей, допускающих многократное использование в программе (вызов) с различными значениями параметров.
Блок-схемы
Блок-схемы используются для наглядного графического представления алгоритмов, программ и их модулей. В соответствии с госстандартом ГОСТ 19.701-90 блок-схема состоит из так называемых символов и соединяющих их стрелок.
Символ – это фигура, обозначающая действие или вспомогательный узел схемы и зачастую снабженная соответствующей надписью. Стрелки показывают последовательность выполнения действий. Они также могут иметь надписи, поясняющие, в каких случаях выбирается тот или иной путь (когда из символа выходит несколько стрелок). Расположение символов и стрелок выбирается из соображений наглядности и компактности.
Основные символы:
Символ
действия.
Применяется для простых операторов и
модулей (в последнем случае указывается
только имя модуля и краткое пояснение).
Символ бинарного выбора. Обозначает проверку условия и выбор продолжения при истинном («да») или ложном («нет») условии. Может обозначать модуль.
Модуль или оператор выбора с несколькими выходами. На каждом выходе пишется условие выбора этого выхода.
Узел начала программы или модуля (узел входа).
Узел
конца
программы или модуля. В частности,
оператор выхода из функции return.
Узел соединения. Он используется, чтобы операторы имели только одну входную стрелку.