русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

If (условие) действие


Дата добавления: 2015-07-09; просмотров: 637; Нарушение авторских прав


Function имя_функции1() //заголовок описания функции

{//секция объявления локальных переменных

. . .

//операторы тела функции

. . . }

Function имя_функции2() //заголовок описания функции

{//секция объявления локальных переменных

. . .

//операторы тела функции

. . . }

. . .

</script>

Рис. 3.12. Структура скрипта

Описание функции включает в себя заголовок с именем функции, секцию описания локальных данных, доступных только внутри функции, и операторы тела функции. Операторы описания локальных данных и тела функции на
рис. 3.12 показаны многоточием. Внутри скрипта может быть описано множество функций. Функции скрипта описывают действия по обработке данных и их представлению, но для реализации действий функции должны вызываться из тегов HTML web-страницы.

 

3.2.2. Типы данных и их организация в JavaScript

Язык JavaScript является языком высокого уровня, для которого справед­ливы такие понятия как типы данных и организация данных.

Под типом данных понимается заранее зарезервированнное для использования в строго определённых целях (ключевое) слово, которое указывает длину данных, способ хранения в памяти и список возможных действий над данными. Предусмотрены следующие основные типы данных:

· численные (целочисленные Int и вещественные Flt);

· строковые;

· логические.

В языке JavaScript применена слабая типизация данных, что означает возможность вводить данные, не указывая их тип. Интерпретатор языка сам разберётся по контексту программы к какому типу отнести те или иные данные. Тем не менее, в ряде случаев лучше использовать типы и указывать тип данных посредством применения операторов преобразования типов, например parseInt() и parseFlt().

Организация данных – способ хранения данных и организации доступа к ним. Различают три основных способа организации данных: неименованные константы, переменные и массивы (рис. 3.13).



Неименованные константы – числовые, строковые и иного типа постоянные данные, которые хранятся непосредственно в тексте программы. Переменные – это данные, которые в ходе выполнения программы могут изменять свои значения и имеют символьные имена (идентификаторы) для организации доступа к ним. Они объявляются словом var. Особенностями переменных в JavaScript являются объявление их без указания типа и возможность многократного изменения типа в процессе выполнения скрипта.

 

var MyVar; //объявлена переменная
MyVar1 = 10; //объявлена переменная и //задано её значение //безымянной константой 10
MyVar1 = 'Это безымянная константа';   //объявлена и инициализирована //безымянной константой //текстовая переменная
var MyArray1 = new Array(); //создан массив без объявления //размерности и инициализации //значений
MyArray2 = new Array(1,2,3); //создан массив из трёх числовых //элементов со значениями 1,2,3

Рис. 3.13. Примеры описания данных

Массивы – данные, обычно одного типа, которые имеют общие имена (идентификаторы) и уникальные номера (индексы). Особенностью массивов в JavaScript являются возможность объединения в массиве данных разного типа и наличие специальной информационной структуры в виде встроенного объекта Array, предназначенной для их создания.

 

3.2.3. Иерархия объектов в JavaScript

Как известно, в современных языках высокого уровня введены понятия классов и объектов. Под классами понимаются особые типы данных, которые в отличие от примитивных типов объединяют в себе наборы данных (свойств) и наборы программных кодов (функций) для работы со свойствами класса. Для использования класса необходимо создать данные, имеющие тип с именем класса и называющиеся экземплярами класса или объектами. Экземпляры объектов создаются оператором new (рис. 3.13).

Язык JavaScript работает со множеством объектов, образующих иерархическую систему (рис. 3.14).

 
 

 

 


Рис. 3.14. Иерархия объектов языка JavaScript

Язык JavaScript работает с объектами, которые можно разбить на три группы: встроенные объекты, объекты модели, ориентированной на браузер (BOM), и объекты модели, ориентированной на документ (DOM). Объекты модели DOM по иерархии объектов находятся на более низком уровне, чем объекты модели BOM и являются объектами, описывающими объект Document. Встроенные объекты вполне применимы на всех уровнях иерархии объектов и позволяют выполнять действия над свойствами объектов обоих моделей. Объекты обеих моделей имеют объекты события, описанные различными способами.

 

3.2.4. Встроенные объекты языка JavaScript

В языке JavaScript имеются встроенные объекты:

· массивы Array;

· строки String;

· математические функции для работы с числовыми данными Math;

· дата и время Date.

Свойства и методы встроенных объектов приведены в табл. 3.3 – 3.7.

 

Таблица 3.3. Важнейшие методы объекта Array

 

Метод Пояснение
concat Объединение массивов
join Объединение элементов массива в строку
pop Удаление последнего элемента
push Добавление одного или нескольких элементов в конец массива
shift Удаление первого элемента
revers Расположение элементов массива в обратном порядке
slice Удаление нескольких элементов
splice Добавление и удаление элементов
sort Сортировка элементов массива по алфавиту
toSource Возврат массива в виде литералов
toString Возврат массива в виде строки
unshift Добавление элементов в начало массива
valueof Возврат значения массива

 

Таблица 3.4. Важнейшие методы объекта Date

 

Метод Пояснение
/getDate /setDate Получение и установка числа месяца
/getDay /setDay Получение и установка дня недели
/getFullYear /setFullYear Получение и установка года в четырёх символьном формате
/getHours /setHours Получение и установка времени (часов)
/getMilliseconds /setMilliseconds Получение и установка времени (миллиссекунд)
/getMinutes /setMinutes Получение и установка времени (минут)
/getMonth /setMonth Получение и установка месяца
/getSeconds /setSeconds Получение и установка времени (секунд)
/getTime /setTime Получение и установка времени
/getTimezoneOffset Получение смещения времени относительно Гринвича
/getYear /setYear Получение и установка года
/parse Вычисление количества миллисекунд, прошедших с 01.01.1970
/toGMTString Преобразование даты в строку, означающую время по Гринвичу
/toLocalString Преобразование даты в строку, означающую местное время
/toSource Преобразование даты в литерал
/toString Преобразование даты в строку
UTC Вычисление количества миллисекунд, прошедших с 01.01.1970 и преобразование в универсальное время
/valueOf Преобразование даты в примитивное значение

 

Таблица 3.5. Важнейшие свойства и методы объекта Math

 

Свойство или Метод Пояснение
Свойства
/Pi Число π=3.14159298…
/E Основание натурального логарифма (е)
/LN10 /LN2 /LN10E /LN2E Натуральный логарифм 10 Натуральный логарифм 2 Десятичный логарифм числа е Логарифм по основанию 2 числа e
/SQRT1_2 /SQRT2 Квадратный корень числа ½ Квадратный корень числа 2
/abs Вычисление абсолютного значения
/sin /cos /tan Вычисление синуса Вычисление косинуса Вычисление тангенса
/asin /acos /atan Вычисление арксинуса Вычисление арккосинуса Вычисление арктангенса
/exp Вычисление числа е в заданной степени
/log Вычисление натурального логарифма
/ceil Округление в большую сторону
/floor Округление в меньшую сторону
/min /max Вычисление наименьшего из заданных аргументов Вычисление наибольшего из заданных аргументов
/pow Возведение в степень
/random Вычисление псевдослучайного числа в диапазоне 0 – 1
/round Округление до ближайшего целого
/sqrt Вычисление квадратного корня

 


Таблица 3.6. Важнейшие свойства и методы объекта String

 

Свойство или Метод Пояснение
Свойства
/length Количество символов в строке
Методы
/charAt() /charCodeAt() Возврат по номеру символа в строке Возврат по номеру символа в строке его кода
.fromCharCode() Преобразование кодов символов в строку
/IndexOf() /lastIndexOf() Поиск подстроки в строке
/substr() /substring() Копирование части строки
/toLowerCase() /toUpperCase() Преобразование символов строки в строчные Преобразование символов строки в прописные

 

3.2.5. Объекты модели BOM и DOM web-стандартов

Web-стандарты определили два множества элементов, описывающих броузер и документ. Эти два множества называются объектными моделями броузера (BOM) и документа (DOM). В модели BOM описываются и объекты, имеющие отношение к броузеру, и объекты, относящиеся по смыслу к документу[1]. Иерархия часто использующихся объектов модели BOM показана на рис. 3.15 [2]. Важнейшие свойства и методы объектов (рис. 3.14) приведены в табл. 3.7.

Объект Window представляет собой окно броузера и содержит в себе множество вложенных объектов, составляющих это окно, в т.ч. полосы прокрутки, значки навигационной панели, рамку окна и т.д. Объекты, находящиеся на втором уровне можно рассматривать как свойства объекта Window, а объекты, находящиеся на третьем – как свойства объекта Document. Объект Window является глобальным, поэтому конструкции "window.объект_2_уровня" и "объект 2_уровня" являются эквивалентными.

 

 
 

 


Рис. 3.15. Часто использующиеся объекты модели BOM

В окне броузера существует web-страница, определяющаяся объектом Document, который имеет множество свойств (атрибутов) и методов (програм­мных кодов). В него вложены множества объектов:

· Forms – объекты, созданные тегом <form>;

· Images – изображения, созданные тегом <img>;

· Links – ссылки, созданные тегом <a>.

Эти множества объектов называются коллекциями объектов.

Местонахождение страницы в Internet-пространстве определяется объектом Location:

· URL-адрес страницы;

· сервер, хранящий страницу, его номер порта соединения и протокол.

Однако эти сведения уместны при загрузке страницы с сервера, а не с локального компьютера.

Объект History хранит список страниц, посещённых пользователем. Этот список называется стеком истории броузера и позволяет переходить от одной страницы к другой, не выходя в поисковые службы Internet.

Объект Navigator содержит информацию о броузере пользователя и операционной системе, в которой он запущен. Этот объект позволяет получать имя броузера и его параметры, а также сведения об операционной системе, которые позволят учесть особенности броузера пользователя и отправить его к странице, которая будет корректно отображаться на экране пользователя или соответствующему разделу текущей web-страницы.

Объект Screen содержит информацию о возможностях экрана пользователя, в частности его размерах, количестве цветов и т.д.

 

Таблица 3.7. Важнейшие свойства и методы объектов модели BOM

 

Свойство или Метод Пояснение
Объект Window
Свойства
/cloused Возвращает true или false в зависимости от состояния окна (открыто, закрыто)
/frames Возвращает массив всех фреймов на странице, включая iframe
/document Возвращает объект document данного окна
/history Возвращает объект History данного окна
/length Возвращает количество фреймов, включая ifraim, находящихся в окне
/location Возвращает объект Location данного окна
/name Возвращает или устанавливает имя данного окна
/navigator Возвращает объект Navigator данного окна
/opener Возвращает ссылку на окно, которое открыло данное окно
/parent Возвращает родительское окно данного окна
/screen Возвращает объект Screen данного окна
/top Возвращает верхнее браузерное окно для данного окна
Методы
/alert Открытие модального диалогового окна с кнопкой ОК
/blur() Перевод окна в неактивное состояние
/clearInterval Прекращение повторного выполнения кода, заданного setInterval
/clearTimeout Отменяет запланированное setTimeout выполнение кода
/close Закрытие окна броузера
/confirm Открытие модального диалогового окна с кнопками ОК и Отмена
/focus Перевод окна в активное состояние
/moveBy Переещение окна относительно его текущей позиции
/moveTo Перемещение окна в заданную позицию
/open Открытие нового окна броузера
/print Печать содержимого окна
/prompt Открытие модального диалогового окна с полем ввода данных
/setTimeout Установка задержки выполнения операции (установка таймера)
/clearTimeout Очистка таймера
/scrollBy Прокручивание содержимого окна на заданное количество пикселей
/scrollBy Прокручивание окна до указанных координат
Объект History
/length Длина списка посещённых страниц (свойство)
/back Перейти на страницу назад
/forward Перейти на страницу вперёд
/go Перейти на заданное число страниц
Объект Location
Свойства
/hash Часть URL, содержащая якори
/hostname, /host Часто URL, содержащая доменное имя Имя компьютера в Интернет вместе с портом, если он указан
/href Адрес web-страницы
/pathname Часть URL, содержащая путь к загруженному документу
/port Номер порта хост-устройства
/protocol Имя протокола обмена данными
/search Часть URL, содержащая передаваемые запросы
Методы
/assign Загрузка документа, адрес которого передан в качестве параметра
/replace Замена текущей страницы новой
/reload Загрузка документа заново
Объект Screen
/availHeight Высота экрана со всеми элементами интерфейса
/availWidth Ширина экрана со всеми элементами интерфейса
/colorDept Глубина пиксела (разрядность цвета) на экране пользователя
/height Вертикальный размер экрана в пикселах
/width Горизонтальный размер экрана в пикселах
   
Объект Document
/anchors Коллекция закладок (якорей)
/cookie Cookie, связанное с документом
/domain До менное имя сервера
/forms Коллекция форм
/images Коллекция изображений
/links Коллекция ссылок
/referrer URL страницы, с которой был осуществлён переход на текущую страницу
/title Заголовок документа (возврат и установка)
/URL Текущий URL
Методы
/createElement Создание элемента
/getElementById Обращение к элементу по его номеру
/getElementsByName Обращение к элементу по его имени
/getElementsByTagName Обращение ко всем указанным тегам страницы
/write Вывод переданного текста на страницу
/writeln Вывод переданного текста на страницу с переводом строки
Объект Navigator
/appCodeName Кодовое имя браузера
/appName Имя браузера
/appVersion Версия браузера
/cookieEnabled Наличие поддержки cookie у пользователя
/platform Платформа (фактически ОС), под которую скомпилирован браузер
/userAgent Заголовок, посланный браузером пользователя при запросе ресурса (полная информация о браузере
/javaEnabled Признак включения поддержки Java в браузере пользователя
Коллекция FormsиОбъект Form
Свойства (только чтение)
/name Имя формы
/target Имя окна, в которое сервер загружает результат передачи данных из формы
/action URL сервера, на который форма посылает данные
/method Метод передачи данных (GET для данных малого объёма, POST – для данных большого объёма
/enctype MIME кодировка данных: "application/x-www-forum-urlencoded" (по умолчанию) или "multipart/form-data"
/length Количество форм в коллекции
/elements Коллекция элементов в форме
Метод
/submit Передача формы на сервер
Коллекция LinksиОбъект Link
Свойства
/hash Часть URL, содержащая якори
/hostname, /host Часто URL, содержащая доменное имя Имя компьютера в Интернет вместе с портом, если он указан
/href Адрес web-страницы
/pathname Часть URL, содержащая путь к загруженному документу
/port Номер порта хост-устройства
/protocol Имя протокола обмена данными
/search Часть URL, содержащая передаваемые запросы
/target Значение атрибута TARGET
/length Количество элементов в коллекции (только для кллекции)
Коллекция ImagesиОбъект Image
Свойства
/src Источник (URL-адрес)
/alt Альтернативный текст
/title Заголовок изображения
/name Имя изображения
/height Размер по вертикали
/width Размер по горизонтали
/border Толщина рамки
/complete Завершение загрузки (true – рисунок загружен, false – нет)
/length Количество изображений в коллекции (для Images)
Событие Event
Свойства
/srcElement /target Источник события (Intrnet Explorer) Источник события (Netscape)
/cancelBubble Запрет всплытия события
/returnValue Отмена действия события по умолчанию (Intrnet Explorer)
/screenX /screenY Горизонтальная и вертикальная координаты события относительно экрана
/clientX /clientY Горизонтальная и вертикальная координата события относительно документа (Intrnet Explorer)
/pageX /pageY Горизонтальная и вертикальная координаты события относительно документа (Netscape)
/offsetX /offsetY Горизонтальная и вертикальная координата события относительно контекста (Intrnet Explorer)
/layerX /layerY Горизонтальная и вертикальная координаты события относительно контекста (Netscape)

 

3.2.5. Объекты модели DOM web-стандартов

Web-страница состоит из стандартных элементов, доступ к которым обеспечивает модель DOM. Она Рассчитана на использование как языком JavaScript, так и языком XML. Модель основана на древовидном способе изображения структуры страницы (рис. 3.16). На рис. 3.16,а показан код простой страницы, содержащей заголовок, абзац и таблицу. Жирным шрифтом выделены открывающие теги стандартных элементов, образующих структуру таблицы. Наклонным шрифтом показано содержимое этих тегов. Тег <b>, не образующий стандартного элемента, показан нормальным шрифтом.

 

  <!DOCTYPE html Public "-//W3C// DTD XHTML 1.0 Transitional//EN" http://www.w3.org/TR/xhtml/DTD/ xhtml1-transitional.dtd" <html xmlns=http://www.w3.org/1999/xhtml> <head> <title>Это страница</title> </head> <body> <p><b>Это абзац</b></p> <table ...> <tr><td>1.1</td><td>1.2</td></tr> <tr><td>2.1</td><td><2.2></td></tr> </table> </body </html> а)   б)

Рис. 3.16. Пример древовидного изображения структуры web-страницы

На рис. 3.16,б показана древовидная структура web_страницы. Прямоугольниками показаны теги стандартных элементов. Из рисунка видно, что страница имеет иерархическую структуру. На самом верху иерархии находится тег <html>, на самом нижнем – содержимое тегов стандартных элементов, вложенных в элемент html. Теги стандартных элементов образуют узлы дерева Вышестоящие узлы называются родительскими, нижестоящие – дочерними. Узел html является корневым узлом документа.

Иерархия объектов модели DOM показана на рис. 3.19. На верхнем уровне иерархии находятся объекты:

· Node – абстрактный объект, предназначенный для описания каждого узла документа;

· NodeList – список всех объектов семейства Node, обеспечивающий дос­туп к объектам по номеру (индексу);

· NamedNodeMap – объект, обеспечивающий доступ к объектам по имени.

В зависимости от типа узла на основе объекта Node создаётся конкретный объект, расположенный на более низком уровне иерархии. Язык XML использует все объекты. Жирным шрифтом выделены объекты, используемые в языке JavaScript. Свойства и методы объектов модели DOM приведены в табл. 3.8

 
 

 

 


Рис. 3.19. Иерархия объектов модели DOM

Таблица 3.8. Важнейшие свойства и методы объектов модели DOM

 

Свойство или Метод Пояснение
Объект Node
Свойства
/firstChild Первый дочерний узел элемента
/lastChild Последний дочерний узел элемента
/previouseSibling /nextSibling Предыдущий и следующий дочерние узлы элемента того же уровня, что и текущий дочерний узел
/ownerDocument Корневой узел документа, содержащего узел (недоступно в IE5 и IE5.5)
/parentNode Элемент, содержащий узел
/nodeName Название узла
/nodeType Тип узла в виде числа
/nodeValue Значение узла в формате обычного текста (установка)
Методы
/appendChild(newNode)   /removeChild(childNode)   /replaceChild(newChild,oldChild)   /insertBefore(newNode,) Добавление нового объекта в конец списка дочерних узлов, возврат присоединённого узла Удаление дочернего узла из списка дочерних узлов объекта Node и возврат удалённого узла Замена старого дочернего узла новым и возврат заменённого узла Вставка нового объекта Node в список дочерних узлов перед узлом, указанным в параметре referenceNode, и возврат вставленного узла
/cloneNode(cloneChild) Возврат дубликата текущего узла, принимает булево значение (true – клонируется текущий узел и все его дочерние узлы, false – если клонируется только текущий узел)
/hasChildNodes Признак наличия дочерних узлов
Объект document
Методы
/getElementById(idvalue) Возврат ссылки (узла) на элемент, представляемый значением атрибута id этого элемента
/getElementByTagName(tagname) Возврат ссылки (списка узлов) на выбор элементов, описанных в тегах с указанным именем
/documentElement Возврат ссылки на наиболее удалённый элемента документа (корневой элемент, например, </html>)
/tagName Возврат названия тега документа
/createElement(elementName) Создание узла элемента с указанным именем и возврат созданного элемента
/createTextNode(text) Создание и возврат узла с указанным текстом
/createAttribute(attributeName) /getAttribute(attributeName) /setAttribute(attributeName,value) /removeAttribute(attributeName) Создание и возврат узла атрибута с указанным именем Возврат значения атрибута Установка значения атрибута Замена текущего значения атрибута значением по умолчанию
Объект Event
Свойства
/bubbles Признак возможности управления от одного элемента другому
/cancelable Признак возможности отмены у события действия по умолчанию
/currentTarget Указание события, обрабатывающегося в текущий момент времени
/eventPhase Сообщение фазы, в которой находится событие
/target Указание элемента, вызвавшего событие (только для DOM-браузеров)
/timeStamp Указание времени наступления события (только для Firefox)
/type Тип события
Объект MouseEvent
Свойства
/altkey /ctrlkey /shiftkey /metakey Признак нажатия клавиши Alt Признак нажатия клавиши Ctrl Признак нажатия клавиши Shift Признак нажатия мета-клавиши
/button Указание нажатой кнопки мыши (0 – никакая, 1 –– левая, 2– правая, 3 – левая и правая одновременно, 4 – средняя, 5 – левая и средняя одновременно, 6 – правая и средняя одновременно, 7 – все три одновременно)
/clientX /clientY Горизонтальная и вертикальная координата указателя мыши в момент возникновения события
/screenX /screenY Горизонтальная и вертикальная координаты указателя мыши относительно начала координат экрана в момент возникновения события
/relatedTarget Текстовый узел – адресат события mouseover

 

3.2.6. Приёмы программирования на JavaScript

3.2.5.1. Операции и операторы языка JavaScript

В языке JavaScript определено множество операций и операторов. Операции языка приведены в табл. 3.9, операторы языка приведены в табл. 3.10, встроенные функции – в табл. 3.11 [4].

 

Таблица 3.9. Операции языка JavaScript

 

Операция Пояснение Пример
Операции присваивания
= Присваивание а=5
+= Присваивание со сложением a+=b то же, что a=a+b
-= Присваивание с вычитанием a-=b то же, что a=a-b
*= Присваивание с умножением a*=b то же, что a=a*b
/= Присваивание с делением a/=b то же, что a=a/b
%= Присваивание с остатком от деления a%=b то же, что a=a mod b
<<= Присваивание со сдвигом влево  
>>= Присваивание со сдвигом вправо  
&= Присваивание с побитовым "И"  
^= Присваивание с побитовым "исключающим ИЛИ"  
|= Присваивание с побитовым "ИЛИ"  
Операции логических отношений
== Равно  
!= Не равно  
=== Строго равно  
!== Строго не равно  
> Больше  
< Меньше  
>= Больше или равно  
<= Меньше или равно  
Операции вычислений
+ Сложить  
- Вычесть  
* Умножить  
/ Разделить  
% Найти остаток от деления  
++ Увеличить на единицу  
-- Уменьшить на единицу  
& Побитовое логическое "И"  
| Побитовое логическое "ИЛИ"  
^ Побитовое логическое "исключающее ИЛИ"  
~ Побитовое логическое "НЕ"  
<< Сдвиг влево  
>> Сдвиг вправо  
&& Логическое "И"  
|| Логическое "ИЛИ"  
! Логическое "НЕ"  

 

Таблица 3.10. Операторы языка JavaScript

 

Операция Пояснение Пример
if … else Оператор ветвления  
switch case default Переключение по условию Внутренний переключатель оператора switch Действие по умолчанию оператора switch  
for Организатор цикла со счётчиком  
return Возвращение значения  
while Организация цикла с предусловием  
do . . . while Организация цикла с постусловием  
with Операции с одним и тем же объектом  
for . . . in Организация цикла с использованием всех свойств объекта  
function Заголовок описания функции  

 

Таблица 3.11. Встроенные функции языка JavaScript

Функция Пояснение Пример
/eval Оценка выражения без ссылки на объект  
/isFinite Проверка "Является ли объект числом?"  
/isNan Проверка "Является ли объект не числом?"  
/parseFloat Выделение из строки числа с плавающей точкой  
/parseInt Выделение из строки целого числа в любой системе счисления  
/Number Преобразование объекта в число  
/String Преобразование объекта в строку  
/escape Преобразование всех не буквенно-цифровых символов строки в их ASCII-коды с предшествующим символом %  
/ubescape Раскодирование строки  

 

3.2.5.2. Конструирование выражений

Выражения в языке JavaScript можно разделить на арифметические, логические и символьные. Правила конструирования выражение в целом аналогичны правилам других языков программирования:

· выражения записываются в одну строку, верхние и нижние индексы запрещаются;

· выражения могут содержать символ операции присваивания, безымянные константы, имена и индексы переменных, обращения к встроенным функциям и функциям, определённым пользователем.

Конструирование символьных выражений имеет ряд особенностей, рассмотренных ниже.

Арифметические выражения в целом строятся так же как и в большинстве языков программирования. Несколько непривычным является обилие сложных операторов группы присваивания, например:

· а=5

· a+=b то же, что a=a+b

· a-=b то же, что a=a-b

· a*=b то же, что a=a*b

· a/=b то же, что a=a/b

· a%=b то же, что a=a mod b.

Особенностью построения арифметических выражений является также отсутствие привычного оператора возведения в степень. Это возможность в JavaScript реализуется с помощью встроенной функции pow.

Особенностью построения логических выражений является применение оператора "= =" вместо "=". Конструкция а=b означает присвоение переменной а значения переменной b. Конструкция а==b означает сравнение переменных на предмет их равенства.

Для преобразования типов можно использовать функции parseFloat, parseInt, Number и String. Язык JavaScript предоставляет также возможность различных проверок, например, функция isFinite организует проверку является ли переменная или выражение числом, а функция isNan или, наоборот, не числом.

При построении символьных выражений широко используются привычные операторы и функции работы со строковыми данными: конкатенация строк, поиск подстроки в строке и т.д. Особенностями работы с символьными выражениями являются:

· замена привычных имён встроенных строковых функций специфичес­кими именами языка JavaScript;

· необходимость применения регулярных выражений, особенно в случаях поиска подстроки в строке, замены частей строк и т.д.

Регулярным выражением называется шаблон текста, состоящий из обычных символов и специальных управляющих символов. Регулярные выражения выделяются символами "/". Например, комбинация символов " /о{2}/ "означает комбинацию символов " оо ", в частности в слове food. Список управляющих символов приведен в табл. 3.16 раздела 3.2.5.6.

 

3.2.5.3. Организация ветвления программы

Ветвление программы осуществляется условным оператором if … else и переключателем switch – case – default.

Оператор if … else имеет форматы:

if (условие) действие



<== предыдущая лекция | следующая лекция ==>
Рекомендуется не использовать вопросительный знак таким образом. | if (условие) действие_1 else действие_2


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.048 сек.