Реферат: Сравнительный анализ языков программирования JavaScript и VBScript

<span Arial",«sans-serif»;text-transform: uppercase">Омский Государственный Педагогический Университет

<span Arial",«sans-serif»">

<span Arial",«sans-serif»;text-transform:uppercase">Кафедраинформатики

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»;text-transform:uppercase">курсоваяработа<span Arial",«sans-serif»; text-transform:uppercase">

<span Arial",«sans-serif»;mso-bidi-font-weight: bold">

<span Arial",«sans-serif»;mso-bidi-font-weight: bold">Сравнительный анализ языков программирования

<span Arial",«sans-serif»;mso-ansi-language: EN-US;mso-bidi-font-weight:bold">JavaScript<span Arial",«sans-serif»;mso-bidi-font-weight: bold"> <span Arial",«sans-serif»; mso-bidi-font-weight:bold">и <span Arial",«sans-serif»;mso-ansi-language:EN-US;mso-bidi-font-weight: bold">VBScript<span Arial",«sans-serif»; mso-bidi-font-weight:bold">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">Проверил: КирьяковаИ.В.

<span Arial",«sans-serif»">Выполнил:Поросков Д.В.

<span Arial",«sans-serif»">Группа:34

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»">

<span Arial",«sans-serif»;text-transform:uppercase">Омск2002

<span Arial",«sans-serif»; text-transform:uppercase"><span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;mso-ansi-language:RU;mso-fareast-language:RU;mso-bidi-language: AR-SA">

<span Arial Black",«sans-serif»">Содержание

Введение ….3

Общий обзор языка …4

Типы данных …5

Переменные …8

Операторы …10

Операторы управления …13

Процедуры …19

Объекты …21

Список литературы …24

<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;mso-ansi-language:RU;mso-fareast-language:RU;mso-bidi-language: AR-SA">

<span Arial Black",«sans-serif»;mso-bidi-font-family:Arial">Введение

Объектные модели языков сценариевтесно связаны с тэгами HTML.При загрузке страницы HTMLв браузер интерпретатор языка создает объекты со свойствами, определенными значениямитэгов страницы. Говорят, что браузер отражает HTML-страницу в свойствах объектов, ииногда этот процесс называют отражением(reflection). Созданныеобъекты существуют в виде иерархической структуры, отражающей структуру самой HTML-страницы. На верхнемуровне расположен объект <span Courier New";mso-ansi-language:EN-US">window

, представляющий собойактивное окно браузера. Далее вниз по иерархической лестнице следуют объекты <span Courier New";mso-ansi-language: EN-US">frame, <span Courier New"; mso-ansi-language:EN-US">document, <span Courier New";mso-ansi-language:EN-US">location и <span Courier New";mso-ansi-language: EN-US">history, представляющие соответственно фрейм, непосредственно самдокумент, адрес загружаемого документа и список ранее загружавшихся документов,и т.д. Значения свойств объектов отражают значения соответствующих параметровтэгов страницы или установленных системных параметров.

Для правильного использованияобъектных моделей следует четко понимать, как браузер компонует страницы и, темсамым, создает иерархия объектов. При загрузке страницы просматриваются сверхувниз, тем самым последовательно происходит компоновка страницы и ее отображениев окне браузера. А это означает, что и объектная модель страницы такжеформируется последовательно, по мере ее обработки. Поэтому невозможно обратитсяиз сценария, расположенного ранее какой-либо формы на странице, к элементамэтой формы. Всегда следует помнить о том, что браузер последовательно сверхувниз интерпретирует содержимое HTML-страницы.

Еще один аспект работы собъектами языков сценариев заключается в том, что нельзя изменить свойстваобъектов. Браузер обрабатывает страницу только один раз, компонуя и отображаяее. Поэтому попытка в сценарии изменить свойство отображенного элементастраницы, обречена на провал. Только повторная загрузка страницы приведет кжелаемому результату.

<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;mso-ansi-language:RU;mso-fareast-language:RU;mso-bidi-language: AR-SA">

<span Arial Black",«sans-serif»;mso-bidi-font-family:Arial">Общий обзорязыка

JavaScript

Язык программирования JavaScript разработан фирмой Netscape для созданияинтерактивных HTML-документов.Это объектно-ориентированный язык разработки встраиваемых приложений,выполняющих как на стороне клиента, так и на стороне сервера. Синтаксис языкаочень похож на синтаксис языка Java– поэтому его часто называют Java-подобным.Клиентские приложения выполняются браузером просмотра Web-документов на машине пользователя,серверные приложения выполняются на сервере.

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

Клиентские приложениянепосредственно встраиваются в HTML-страницыи интерпретируются браузером по мере отображения частей документа в его окне. Серверныеприложения для увеличения производительности предварительно компилируются впромежуточный байт-код.

Основные области использованияязыка JavaScript присоздании интерактивных HTML-страниц:

·<span Times New Roman"">        

·<span Times New Roman"">        

HTMLдо передачи их на сервер

·<span Times New Roman"">        

HTML-страниц совместно с каскаднымитаблицами стилей и объектной моделью документа

·<span Times New Roman"">        

JavaScript,встроенном в HTML-страницу

VBScript

Язык создания сценариев VBScript разработан фирмой Microsoft и являетсяподмножеством достаточно распространенного в среде программистов языка VisualBasic разработки прикладных Windows-приложений. Как и егородитель, язык VBScriptдостаточно прост и легок в изучении.

Преимуществом его применения длясоздания сценариев является возможность использования, с небольшимикорректировками, ранее написанных процедур на языках VisualBasic и VisualBasicforApplication.

Функциональные возможностисценариев, написанных на VBScript,ничем не отличаются от возможностей сценариев JavaScript: динамическое созданиедокумента или его частей, перехват и обработка событий и т.д.

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

<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;mso-ansi-language:RU;mso-fareast-language:RU;mso-bidi-language: AR-SA">

<span Arial Black",«sans-serif»">Типы данных

JavaScript

Как и любой другой языкпрограммирования, JavaScriptиспользует переменные для хранения данных определенного типа. Реализация JavaScript является примеромязыка свободного использования типов. В нем не обязательно задавать типпеременной. Ее тип зависит от типа хранимых в ней данных, причем при изменениитипа данных меняется и тип переменной.

JavaScript поддерживает четыре простыхтипа данных:

·<span Times New Roman"">        

·<span Times New Roman"">        

·<span Times New Roman"">        

·<span Times New Roman"">        

Для присваивания переменнымзначений основных типов применяются литералы– буквенные значения данных соответствующих типов.

Целые литералы являются последовательностью цифр и представляютобычные целые числа со знаком или без знака:

<span Courier New""> 123 // целоеположительное число

<span Courier New"">-123 // целое отрицательное число

<span Courier New"">+123 // целое положительное число

Для задания вещественныхлитералов используется синтаксис чисел с десятичной точкой, отделяющей дробнуючасть числа от целой, или запись вещественных чисел в научной нотации суказанием после символа “e”или “E” порядка числа. Примерправильных вещественных чисел:

<span Courier New"">1.25  0.125

<span Courier New";mso-ansi-language: EN-US">e01    12.5E-1     0.0125E+2<span Courier New"">

Строковый литерал – последовательность алфавитно-цифровых символов,заключенная в одинарные (‘) или двойные кавычки (“), например: “Ира”, ‘ИРА’.При задании строковых переменных нельзя смешивать одинарные и двойные кавычки. Недопустимозадавать строку, например, в виде “Ира’. Двойные кавычки – это одинсамостоятельный символ, а не последовательность двух символов одинарныхкавычек. Если в строке нужно использовать символ кавычек, то строковый литералнеобходимо заключать в кавычки противоположного вида:

<span Courier New";mso-ansi-language:EN-US">“It’sa string” //

<span Courier New"">Значение<span Courier New";mso-ansi-language:EN-US"> <span Courier New"">строки<span Courier New";mso-ansi-language:EN-US"> <span Courier New"">равно<span Courier New";mso-ansi-language: EN-US"> It’s a string<span Courier New"">

Булевы литералы имеют два значения: <span Courier New";mso-ansi-language:EN-US">true

и <span Courier New"; mso-ansi-language:EN-US">false, и используются для обработки ситуацийда/нет в операторах сравнения.

VBScript

В VBScript определен только один типданных – <span Courier New"; mso-ansi-language:EN-US">Variant

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

В своем простейшем использованиитип <span Courier New"; mso-ansi-language:EN-US">Variant

содержит либо числовые данные, либосимвольные строки – типы данных, наиболее часто встречаемые при написаниисценария. Реально содержащиеся в вариантом типе данные могут быть одного изтипов, называемых подтипами типа <span Courier New";mso-ansi-language: EN-US">Variant, представленных в табл.1.

Таблица SEQ Таблица * ARABIC 1Подтипы данных, хранящихся в типе <span Courier New";mso-ansi-language:EN-US;font-weight: normal;mso-bidi-font-weight:bold">Variant

<span Arial",«sans-serif»">Подтип

<span Arial",«sans-serif»">Описание

<span Arial",«sans-serif»">Функция преобразования

<span Courier New"; mso-ansi-language:EN-US">Empty

<span Arial",«sans-serif»">Переменная не инициализирована

<span Courier New"">

<span Courier New"; mso-ansi-language:EN-US">Null

<span Arial",«sans-serif»">Переменная не содержит никаких допустимых данных

<span Courier New"">

<span Courier New"; mso-ansi-language:EN-US">Error

<span Arial",«sans-serif»">Содержит номер ошибки

<span Courier New"">

<span Courier New"; mso-ansi-language:EN-US">Boolean

<span Arial",«sans-serif»">Содержит значения либо

<span Courier New";mso-ansi-language:EN-US">True<span Arial",«sans-serif»">, либо <span Courier New";mso-ansi-language:EN-US">False<span Arial",«sans-serif»">

<span Courier New"; mso-ansi-language:EN-US">CBool

<span Courier New"; mso-ansi-language:EN-US">Byte

<span Arial",«sans-serif»">Содержит целые числа в диапазоне от 0 до 255

<span Courier New"; mso-ansi-language:EN-US">CByte

<span Courier New"; mso-ansi-language:EN-US">Integer

<span Arial",«sans-serif»">Содержит целые числа в диапазоне от -32 768 до 32 767

<span Courier New"; mso-ansi-language:EN-US">CInt

<span Courier New"; mso-ansi-language:EN-US">Currency

<span Arial",«sans-serif»">Значения в диапазоне
от -922

<span Arial",«sans-serif»; mso-ansi-language:EN-US"> <span Arial",«sans-serif»">337<span Arial",«sans-serif»;mso-ansi-language: EN-US"> <span Arial",«sans-serif»">203<span Arial",«sans-serif»; mso-ansi-language:EN-US"> <span Arial",«sans-serif»">685<span Arial",«sans-serif»;mso-ansi-language: EN-US"> <span Arial",«sans-serif»">477.5808 до 922 337 203 685 477.5807

<span Courier New"; mso-ansi-language:EN-US">CCur

<span Courier New"; mso-ansi-language:EN-US">Long

<span Arial",«sans-serif»">Содержит целые числа в диапазоне

<span Arial",«sans-serif»">от -2 147 483 648 до 2 147 483 647

<span Courier New"; mso-ansi-language:EN-US">CLng

<span Courier New"; mso-ansi-language:EN-US">Single

<span Arial",«sans-serif»">Содержит вещественные числа с плавающей точкой одинарной точности в диапазоне

<span Arial",«sans-serif»">от -3.402823

<span Arial",«sans-serif»; mso-ansi-language:EN-US">E38<span Arial",«sans-serif»"> до -1.401298<span Arial",«sans-serif»;mso-ansi-language:EN-US">E-45<span Arial",«sans-serif»">

<span Arial",«sans-serif»">для отрицательных значений

<span Arial",«sans-serif»">и от 1

<span Arial",«sans-serif»; mso-ansi-language:EN-US">.401298E-45 <span Arial",«sans-serif»">до <span Arial",«sans-serif»;mso-ansi-language: EN-US">3.402823E38<span Arial",«sans-serif»">

<span Arial",«sans-serif»">для положительных значений

<span Courier New"; mso-ansi-language:EN-US">CSng

<span Courier New"; mso-ansi-language:EN-US">Double

<span Arial",«sans-serif»">Содержит вещественные числа с плавающей точкой удвоенной точности в диапазоне

<span Arial",«sans-serif»">от -1.79769313486232

<span Arial",«sans-serif»;mso-ansi-language:EN-US">E<span Arial",«sans-serif»">308 до -4.94065645841247<span Arial",«sans-serif»; mso-ansi-language:EN-US">E<span Arial",«sans-serif»">-324

<span Arial",«sans-serif»">для отрицательных значений

<span Arial",«sans-serif»">и от 4.94065645841247

<span Arial",«sans-serif»;mso-ansi-language:EN-US">E<span Arial",«sans-serif»">-324 до 1.79769313486232<span Arial",«sans-serif»;mso-ansi-language:EN-US">E<span Arial",«sans-serif»">308

<span Arial",«sans-serif»">для положительных значений

<span Courier New"; mso-ansi-language:EN-US">CDbl

<span Courier New"; mso-ansi-language:EN-US">Date(Time)

<span Arial",«sans-serif»">Содержит число, которое представляет дату в диапазоне от 1 января 100 года до 31 декабря 9999 года

<span Courier New"; mso-ansi-language:EN-US">CDate

<span Courier New"; mso-ansi-language:EN-US">String

<span Arial",«sans-serif»">Содержит строку переменной длины (до 2 миллионов символов)

<span Courier New"; mso-ansi-language:EN-US">CStr

<span Courier New"; mso-ansi-language:EN-US">Object

<span Arial",«sans-serif»">Содержит ссылку на объект

<span Courier New"; mso-ansi-language:EN-US">

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

Значение <span Courier New";mso-ansi-language:EN-US">Empty

имеет переменная, которая была объявлена в операторе <span Courier New";mso-ansi-language:EN-US">Dim(см. ниже), но ей еще не присваивали никакого значения. Это значение считаетсяравным 0 в математических операциях и равным пустой строке (“”) в операциях состроковыми значениями.

Значение <span Courier New";mso-ansi-language:EN-US">Null

означает, что переменная не содержит данных. Его не следует путать со значением<span Courier New";mso-ansi-language: EN-US">Empty. Вариантная переменная может получить значение <span Courier New";mso-ansi-language: EN-US">Null в результате выполнения некоторых операций над ней. Этозначение можно присвоить переменной, тогда как значение <span Courier New";mso-ansi-language:EN-US">Empty– нельзя.

Значение <span Courier New";mso-ansi-language:EN-US">Error

– это специальное значение, которое используется для указания возникновенияошибки в процедуре.

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

<span Courier New""> 23         ‘Целоечисло

<span Courier New"">-23.78      ‘Действительноечисло с фиксированной точкой

<span Courier New"">-237.8

<span Courier New";mso-ansi-language:EN-US">E<span Courier New"">-1   ‘Действительное число с плавающей точкой

Строковые литералы задаются ввиде последовательности символов, заключенных в двойные кавычки (“):

<span Courier New";mso-ansi-language:EN-US">“

<span Courier New"">Это строковый литерал<span Courier New";mso-ansi-language: EN-US">”<span Courier New"">.

Литералы даты и временизаключаются между символами числовых знаков (#). VBScriptподдерживаетбольшое число форматов даты и времени. Следующие примеры показывают правильныелитералы даты и времени, соответствующие дате 10 июня 1999 года:

<span Courier New";mso-ansi-language:EN-US">#<st1:date Year=«1999» Day=«6» Month=«10» w:st=«on»>10-6-99</st1:date> <st1:time Minute=«20» Hour=«22» w:st=«on»>22:20</st1:time>#

<span Courier New";mso-ansi-language:EN-US">#10/6/99#

<span Courier New";mso-ansi-language:EN-US">#10/6/99<st1:time Minute=«20» Hour=«22» w:st=«on»>10:20pm</st1:time>#

<span Courier New"">

Внутренне литералы даты и временипредставляются в виде действительных чисел удвоенной точности. Целая частьпредставляет количество дней, прошедших от даты 30 декабря 1899 года, а дробнаячасть – время суток.

Булевы литералы <span Courier New";mso-ansi-language:EN-US">True

<span Courier New""> и <span Courier New";mso-ansi-language: EN-US">False являются константами целого типа, принимающими соответственнозначения <span Courier New"">1 и <span Courier New"">0. Любое числовоезначение, не равное нулю, преобразуется функцией <span Courier New";mso-ansi-language:EN-US">CBoolв <span Courier New"; mso-ansi-language:EN-US">True, а нулевое значение (целое илидействительное) – в <span Courier New"; mso-ansi-language:EN-US">False.

Вариантный тип данных прииспользовании в выражениях в качестве операндов разнообразных операторов языкаобрабатывается в зависимости от подтипа содержащихся в нем данных. Например,при использовании переменных этого типа данных в операторе сложения (+)результат зависит от того, какие подтипы данных в них содержатся. Если хотя быодин из операндов содержит число, то результат будет сумма значений двухпеременных (содержимое второго операнда преобразуется к числовому подтипу), еслиоба операнда содержат строковые данные, тот результатом будет конкатенациястрок.

Вариативный тип данных предоставляетпрограммисту более эффективный способ обработки и хранения данных, не заботясьо типе хранимых данных. Если, например, при вычислениях первоначально впеременной вариантного типа хранилось значение типа <span Courier New";mso-ansi-language:EN-US">Byte

(число в диапазоне от 0 до 255), и в результате выполнения некоторых действийэто значение стало отрицательным, то просто изменится представление этого числав переменной (оно станет <span Courier New";mso-ansi-language:EN-US">Integer) и не возникает никакойошибки. Правда, за это удобство приходится платить используемой памятью: длявариантного типа данных вне зависимости от хранимого подтипа нужно 16 байтпамяти.

Иногда в некоторых вычисленияхнеобходимо явно преобразовать содержащийся в переменной подтип в другой. Дляэтого в VBScriptимеется ряд функций преобразования в соответствующие типы. В табл. 1 последнийстолбец содержит имена функций преобразования в соответствующий подтип. Этифункции в качестве параметра принимают литералы, переменные и выражения.

<span Times New Roman",«serif»; mso-fareast-font-family:«Times New Roman»;mso-ansi-language:EN-US;mso-fareast-language: RU;mso-bidi-language:AR-SA">

<span Arial Black",«sans-serif»">Переменные

JavaScript

Каждая переменная имеет имя,которое должно начинаться с буквы латинского алфавита, либо символаподчеркивания “_”, за которым следует любая комбинация алфавитно-цифровыхсимволов или символов подчеркивания. Следующие имена являются допустимымиименами переменных

<span Courier New";mso-ansi-language:EN-US">Temp

<span Courier New"">1

<span Courier New";mso-ansi-language:EN-US">MyFunction

<span Courier New"">

<span Courier New"">_

<span Courier New";mso-ansi-language:EN-US">my<span Courier New"">_<span Courier New";mso-ansi-language:EN-US">Method<span Courier New"">

Язык JavaScriptчувствителенк регистру. Это означает, что строчные и прописные буквы алфавита считаютсяразными символами.

Определить переменную можно двумяспособами:

·<span Times New Roman"">        

<span Courier New";mso-ansi-language:EN-US">var

·<span Times New Roman"">        

Оператор <span Courier New";mso-ansi-language:EN-US">var

используется как для задания, так и для инициализации переменной и имеетсинтаксис:

<span Courier New";mso-ansi-language:EN-US">var

<span Courier New""> имя_переменной [=начальное_значение];

Необязательный операторприсваивания задает данные, которые содержит переменная. Их тип определяет итип переменной. Например, следующий оператор

<span Courier New";mso-ansi-language:EN-US">var

<span Courier New""> <span Courier New";mso-ansi-language: EN-US">weekDay<span Courier New"">= “Пятница”;

задает переменную <span Courier New";mso-ansi-language: EN-US">weekDay

, присваивает ей строковое значение <span Courier New"">“Пятница”, и темсамым определяет ее тип как строковый.

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

VBScript

Переменные используются дляхранения данных приложения. Прежде чем переменную можно будет использовать, еенеобходимо объявить. Это можно осуществить явным способом с помощью оператора <span Courier New";mso-ansi-language: EN-US">Dim

, или неявным – просто использовать имя переменной в оператореприсваивания. Синтаксис оператора явного объявления переменной следующий:

<span Courier New";mso-ansi-language:EN-US">Dim

<span Courier New""> имя_переменной

Параметр <span Courier New"">имя_переменной

– имя объявляемойпеременной. Оно должно начинаться с буквы, не содержать пробелов, точку (.), восклицательныйзнак (!), а также символов (@), (&), ($), (#) и не превышать длину в 255символов.

Язык VBScript не чувствителен к регистру. Этоозначает, что в нем не различаются строчные и прописные буквы. Поэтому,например, и <span Courier New"; mso-ansi-language:EN-US">m

, и <span Courier New";mso-ansi-language:EN-US">M будут ссылаться наодну и ту же переменную, если используются в качестве идентификаторапеременной.

Иногда в программе необходимозадавать переменные, значения которых нельзя изменять. Такие переменныеназываются именованными константами.В VBScript для заданияконстант существует оператор <span Courier New";mso-ansi-language:EN-US">Const

, имеющийследующий синтаксис:

<span Courier New";mso-ansi-language:EN-US">Const

<span Courier New""> <span Courier New";mso-ansi-language: EN-US">conName<span Courier New"">= “Дмитрий”    ‘Строковая константа

<span Courier New";mso-ansi-language:EN-US">Const

<span Courier New""> <span Courier New";mso-ansi-language: EN-US">conPi<span Courier New""> =3.1416         ‘Числовая константа

<span Courier New";mso-ansi-language:EN-US">Const

<span Courier New""> <span Courier New";mso-ansi-language: EN-US">conBirthDay<span Courier New"">= #<st1:date Month=«1» Day=«8» Year=«1953» w:st=«on»>1-8-53</st1:date># ‘Константа даты<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;mso-ansi-language:RU;mso-fareast-language:RU;mso-bidi-language: AR-SA">

<span Arial Black",«sans-serif»">Операторы

JavaScript

Оператор присваивания рассматривается как выражение присваивания, котороевычисляется равным выражению правой части, и в то же время он присваиваетвычисленное значение выражения переменной, заданное в левой части оператора.

Арифметические выражениясоздаются арифметическими операторами(табл. 2).

 

Таблица SEQ Таблица * ARABIC 2Арифметические операторы

<span Arial",«sans-serif»">Оператор

<span Arial",«sans-serif»">Название

<span Courier New"">+

<span Arial",«sans-serif»">Сложение

<span Courier New"">-

<span Arial",«sans-serif»">Вычитание

<span Courier New"">*

<span Arial",«sans-serif»">Умножение

<span Courier New"">/

<span Arial",«sans-serif»">Деление

<span Courier New"">%

<span Arial",«sans-serif»">Остаток от деления целых чисел

<span Courier New"">++

<span Arial",«sans-serif»">Увеличение значения переменной на единицу

<span Courier New"">--

<span Arial",«sans-serif»">Уменьшение значения переменной на единицу

Кроме простого оператораприсваивания (=) существуют сокращенные формы операторов присваивания,совмещенных с арифметическими операторами, в которых производятсяарифметические действия над левыми и правыми операндами и результат присваиваетсяпеременной, заданной левым операндом. Все они перечислены в табл. 3.

Таблица SEQ Таблица * ARABIC 3Сокращенные операторы присваивания

<span Arial",«sans-serif»">Оператор

<span Arial",«sans-serif»">Значение

<span Courier New";mso-ansi-language:EN-US">X * = Y

<span Courier New";mso-ansi-language:EN-US">X = X * Y

<span Courier New";mso-ansi-language:EN-US">X / = Y

<span Courier New";mso-ansi-language:EN-US">X = X / Y

<span Courier New";mso-ansi-language:EN-US">X + = Y

<span Courier New";mso-ansi-language:EN-US">X = X + Y

<span Courier New";mso-ansi-language:EN-US">X — = Y

<span Courier New";mso-ansi-language:EN-US">X = X – Y

<span Courier New";mso-ansi-language:EN-US">X % = Y

<span Courier New";mso-ansi-language:EN-US">X = X % Y

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

Операторы сравнения аналогичны таковым в других языках программирования. Ихсписок представлен в табл. 4.

Таблица SEQ Таблица * ARABIC 4Операторы сравнения

<span Arial",«sans-serif»">Оператор

<span Arial",«sans-serif»">Название

<span Courier New"">==

<span Arial",«sans-serif»">Равно

<span Courier New"">!=

<span Arial",«sans-serif»">Не равно

<span Courier New";mso-ansi-language:EN-US">>=

<span Arial",«sans-serif»">Больше или равно

<span Courier New";mso-ansi-language:EN-US"><=

<span Arial",«sans-serif»">Меньше или равно

<span Courier New";mso-ansi-language:EN-US">>

<span Arial",«sans-serif»">Строго больше

<span Courier New";mso-ansi-language:EN-US"><

<span Arial",«sans-serif»">Строго меньше

При использовании этих операторовв выражении оно вычисляется равным <span Courier New";mso-ansi-language:EN-US">true

, еслисоответствующее сравнение верно, в противном случае значение выражения равно <span Courier New";mso-ansi-language: EN-US">false.

Логические операторы представлены в табл. 5. В примерахпредполагается, что переменная <span Courier New";mso-ansi-language:EN-US">var

<span Courier New"">1 = ‘Кит’, <span Courier New";mso-ansi-language: EN-US">var<span Courier New"">2 =‘Кот’, <span Courier New"; mso-ansi-language:EN-US">var<span Courier New"">3 = <span Courier New";mso-ansi-language:EN-US">false.

Таблица SEQ Таблица * ARABIC 5Логические операторы

<span Arial",«sans-serif»">Оператор

<span Arial",«sans-serif»">Синтаксис

<span Arial",«sans-serif»">Описание

<span Arial",«sans-serif»">Пример

<span Courier New"; mso-ansi-language:EN-US">&&

<span Arial",«sans-serif»;mso-ansi-language:EN-US"> (<span Arial",«sans-serif»">логическое И)

<span Courier New"">выраж1

<span Courier New"; mso-ansi-language:EN-US">&&<span Courier New""> выраж2

<span Arial",«sans-serif»">Возвращает

<span Courier New"">выраж1<span Arial",«sans-serif»">, если оно преобразуется или равно <span Courier New";mso-ansi-language:EN-US">false<span Arial",«sans-serif»">, иначе <span Courier New"">выраж2<span Arial",«sans-serif»">

<span Courier New"; mso-ansi-language:EN-US">var1 && var2

<span Courier New"; mso-ansi-language:EN-US">(

<span Arial",«sans-serif»">равно<span Courier New";mso-ansi-language:EN-US"> ‘<span Courier New"">Кот<span Courier New";mso-ansi-language: EN-US">’)

<span Courier New"; mso-ansi-language:EN-US">var2 && var3

<span Courier New"; mso-ansi-language:EN-US">(

<span Arial",«sans-serif»">равно<span Courier New";mso-ansi-language:EN-US"> false)

<span Courier New"; mso-ansi-language:EN-US">||

<span Arial",«sans-serif»;mso-ansi-language:EN-US"> (<span Arial",«sans-serif»">логическое ИЛИ<span Arial",«sans-serif»; mso-ansi-language:EN-US">)

<span Courier New"">выраж1 ||

<span Courier New";mso-ansi-language: EN-US"> <span Courier New"">выраж2

<span Arial",«sans-serif»">Возвращает

<span Courier New"">выраж1<span Arial",«sans-serif»">, если оно преобразуется или равно <span Courier New";mso-ansi-language:EN-US">true<span Arial",«sans-serif»">, иначе <span Courier New"">выраж2<span Arial",«sans-serif»">

<span Courier New"; mso-ansi-language:EN-US">var

<span Courier New"">1 || <span Courier New";mso-ansi-language:EN-US">var<span Courier New"">2

<span Courier New"">(

<span Arial",«sans-serif»">равно<span Courier New""> ‘Кит’)

<span Courier New"; mso-ansi-language:EN-US">var

<span Courier New"">3 || <span Courier New";mso-ansi-language:EN-US">var<span Courier New"">1

<span Courier New"">(

<span Arial",«sans-serif»">равно<span Courier New""> ‘Кит’)

<span Courier New"; mso-ansi-language:EN-US">var

<span Courier New"">3 || <span Courier New";mso-ansi-language:EN-US">false<span Courier New"">

<span Courier New"">(

<span Arial",«sans-serif»">равно<span Courier New""> <span Courier New";mso-ansi-language:EN-US">false<span Courier New"">)

<span Courier New"; mso-ansi-language:EN-US">!

<span Arial",«sans-serif»;mso-ansi-language:EN-US"> (<span Arial",«sans-serif»">логическое НЕ<span Arial",«sans-serif»; mso-ansi-language:EN-US">)

<span Courier New"; mso-ansi-language:EN-US">!

<span Courier New"">выраж<span Courier New";mso-ansi-language:EN-US">

<span Arial",«sans-serif»">Если

<span Courier New"">выраж<span Arial",«sans-serif»"> равно <span Courier New";mso-ansi-language: EN-US">true<span Arial",«sans-serif»">, возвращает <span Courier New"; mso-ansi-language:EN-US">false<span Arial",«sans-serif»">; если <span Courier New"">выраж<span Arial",«sans-serif»"> равно <span Courier New";mso-ansi-language:EN-US">false<span Arial",«sans-serif»">, возвращает <span Courier New";mso-ansi-language: EN-US">true<span Arial",«sans-serif»">

<span Courier New"; mso-ansi-language:EN-US">!var1

<span Courier New"; mso-ansi-language:EN-US">(

<span Arial",«sans-serif»">равно<span Courier New";mso-ansi-language:EN-US"> false)

<span Courier New"; mso-ansi-language:EN-US">!var3

<span Courier New"; mso-ansi-language:EN-US">(

<span Arial",«sans-serif»">равно<span Courier New";mso-ansi-language:EN-US"> true)

Логические операторы и операторысравнения используются в операторах цикла и условия для проверки завершенияцикла или выполнения определенной группы операторов.

Строковые операторы используются для создания строковых выражений.В JavaScript,собственно говоря, существует только один строковый оператор – операторконкатенации (соединения) строк (+), если не считать сокращенной формыоператора присваивания со сложением (+=). Этот оператор присоединяет кстроковому значению первого операнда строковое значение второго, получаярезультат, равный соединению строк:

<span Courier New";mso-ansi-language:EN-US">string

<span Courier New""> = “Моя”+”строка”; //Значение переменной <span Courier New";mso-ansi-language:EN-US">string<span Courier New""> равно “Моястрока”

Условный оператор является единственным оператором, использующимтри операнда. Его значением является один из двух операндов, определяемый изусловия истинности третьего. Его синтаксис таков:

<span Courier New"">(условие)? знач1: знач2;

Если операнд <span Courier New"">условие

имеетзначение <span Courier New"; mso-ansi-language:EN-US">true, то результатом вычисления условногооператора будет <span Courier New"">знач1,в противном случае – <span Courier New"">знач2.Например, оператор

<span Courier New";mso-ansi-language:EN-US">range

<span Courier New""> = (<span Courier New";mso-ansi-language:EN-US">mark<span Courier New""> <= 2)? “Пересдача”:“Зачтено”;

присваивает переменной <span Courier New";mso-ansi-language: EN-US">range

значение <span Courier New"">“Пересдача”, если переменная <span Courier New";mso-ansi-language: EN-US">mark меньше либо равно <span Courier New"">2, в противном случае ей присваивается значение <span Courier New"">“Зачтено”.

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

VBScript

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

В VBScriptкаждыйоператор размещается на отдельной строке и не завершается никаким разделителем.Однако, если возникает необходимость задания нескольких операторов в однойстроке, то они разделяются двоеточием (:).

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

Комментарии в языке VBScriptвводятсяв текст программы одинарной кавычкой (‘). Любой текст, расположенный в строкеза одинарной кавычкой, трактуется интерпретатором как комментарий, и,естественно, не обрабатывается им.

Большую группу представляют арифметические операторы, выполняющиеосновные арифметические действия над числовыми данными: возведение в степень (^),умножение (*), деление (/), целочисленное деление (), сложение (+) и вычитание(-). Они подчиняются принятым в математике правилам старшинства операций: сначалавыполняется возведение в степень, затем умножение или деление, далее сложениеили вычитание. Скобки изменяют последовательность вычисления операций.

Для сравнения данных используютсяоператоры сравнения: равенство (=),неравенство (<>), меньше (<), больше (>), меньше или равно (<=),больше или равно (>=). Объекты сравниваются с помощью специального оператора<span Courier New";mso-ansi-language: EN-US">Is

.

В VBScript нет специального знака дляоперации присваивания. Один и тот же знака равенства используется как дляоперации присваивания значения переменной (см. выше), так и для операциисравнения на равенство. Смысл операции, представляемой этим символом, зависитот контекста, в котором она применена.

Существует ряд операторов,выполняющих действия над логическими(булевыми) данными: отрицание (<span Courier New";mso-ansi-language:EN-US">Not

), конъюнкция (<span Courier New";mso-ansi-language: EN-US">And), дизъюнкция (<span Courier New";mso-ansi-language:EN-US">Or), исключающее ИЛИ(<span Courier New";mso-ansi-language: EN-US">Xor), эквивалентность (<span Courier New";mso-ansi-language:EN-US">Eqv) и импликация (<span Courier New";mso-ansi-language: EN-US">Imp).

Оператор (<span Courier New"">&

) производит конкатенацию(соединение) двух строк. При его выполнении данные, содержащиеся в операндах,преобразуются при необходимости к строковому подтипу, и осуществляетсясцепление двух строк.<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;mso-ansi-language:RU;mso-fareast-language:RU;mso-bidi-language: AR-SA">

<span Arial Black",«sans-serif»">Операторы управления

JavaScript

Весь набор управления языка можноразбить на три группы:

·<span Times New Roman"">        

·<span Times New Roman"">  

еще рефераты
Еще работы по программированию, базе данных