Языки

» Html
» Java Script

» PHP

» Perl

» ASP

» CGI

» Xml

» Dhtml

» VBScript

» Java

» Css

Уроки

» Photoshop

» Corel Draw

» Dreamwawer

» Flash MX

Скачать

» Программы

» Книги

Шаблоны

» Сайтов

» Flash

» Скрипты

Visual Basic Scripting Edition

 » Изучение VBScript

     » Главная страница

     » VBScript - оглавление

 

 Работа с переменными

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

сохранения введенной пользователем информации;

сохранения данных, возвращенных функциями;

сохранени ярезультатов вычислений;

Объявление переменных

Есть два метода задания переменных в VBScript, явный и неявный. Обычно переменные задаются явно, с помощью оператора Dim:

Dim Name

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

Dim Name, Address, City, State

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

Вы можете сделать так, чтобы интерпритатор требовал явного задания переменных с помощью конструкции Option Explicit в начале сценария. Любая переменная, не заданная явно,будет интерпритирована как ошибочная.

Правила для названия переменных

При выборе названия для переменно используйте следующие правила:

оно должно начинаться с буквы;

оно не должно содержать пробелов;

оно должно быть уникальным внутри своей сферы влияния. О сферах влияния будеи сказано позже в этом уроке;

оно не должно содержать больше 255 символов;

Варианты и подтипы

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

Подтип Описание

Boolean True или False

Byte Целое число от 0 до 255

Currency Денежные значения

Date Дата и время

Double Вещественное число двойной точности

Empty Значение, хранимое вариантом до передачи ему данных

Error Номер ошибки

Integer Длинное целое от -32768 до 32767

Long Крайне длинное целое от -2147483648 до 2147483647

Null Неинтерпритируемые данные

Object Объекты

Single Вещественное обычной точности

String Строковая переменная

 Присваивание значений

Присвоить значение переменной вы можете с помощью следующей конструкции:

Имя_переменной = значение

Например:

Name = "Larry Laffer"

HoursWorked = 50

OverTime = True

Сферы влияния переменных

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

Следующий пример показывает объявление переменных обоих видов:

<SCRIPT>

    Dim counter

    Sub cmdButton_onClick()

        Dim Temp

    End Sub

</SCRIPT>

Переменная counter -- глобальная переменная. Она может использоваться в течение всей работы сценария. Переменная temp существует лишь внутри процедуры cmdButton_onClick.

Константы

VBScript поддерживает массивы. Объявляется массив с помощью операнда Dim, так же, как и переменные.

Dim States(50)

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

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

States(5) = "California"

States(6) = "New York"

Массив может быть многомерным -- VBScript подднрживает до 60 измерений. Ниже показано задание двухмерного массива для хранения названий 51 штата и, например их столиц:

Dim States(50,1)

Теперь для присваивания значений внутри массива вы должны воспользоваться номерами по обоим измерениям:

States (6, 0) = "New York"

States (6, 1) = "Michigan"

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

Dim Customers( )

Для изменения размера массива используется конструкция ReDim

ReDim Customers (100)

Размер массива может изменяться неограниченное количество раз. Для сохранения информации, которая в нем уже есть, используется ключевое слово Preserve.

ReDim Preserve Customers (100)

Второе упражнение по языку VBScript

В этом упражнении мы создадаим страницу, на которой производится простое вычисление на основе цен на продукцию, ее колличества и комиссионных. При этом вы узнаете больше об использовании переменных в VBScript. В этом упражнении вы создадите документ HTML, содержащий сценарий, который получит информацию от пользователя, осуществит на ее основе вычисления и выдаст на страницу результат. Полная версия этой части упражнения находится в файле p0002а.htm.

 

Создание документа

Откройте текстовый редактор и вставьте следующий код HTML:

    <HTML>

    <HEAD>

    <TITLE>Работа в VBScript: Упражнение 2</TITLE>

    </HEAD>

    <BODY>

    <H1>Ваше второе упражнение по VBScript</H1>

    <P>Переменные могут использоваться, чтобы сохранять и управлять значениями.

        Просмотреть демонстрацию этого можно введя количество и цену единицы товара

        в поля ниже и нажав кнопку "Вычислть стоимость". </P>

    <FORM NAME="frmExercise2">

        <TABLE>

            <TR>

                <TD><B>Колличество:</B></TD>

                <TD><INPUT TYPE="Text" NAME="txtQuantity" SIZE=5></TD>

            </TR>

            <TR>

                <TD><B>Цена устройства:</B></TD>

                <TD><INPUT TYPE="Text" NAME="txtUnitPrice" SIZE=5></TD>

            </TR>

        </TABLE>

        <BR>

        <INPUT TYPE="Button" NAME="cmdCalculate" VALUE="Вычислить стоимость">

    </FORM>

    </BODY>

    </HTML>

 

Сохраните файл и загрузите его в Internet Explorer. Результат будет таким.

В этой части добавим сценарий, для того чтобы "нажатие" кнопки Вычислить стоимость приводило к ее вычислениям. Полная версия новой части упражнения находится в файле p0002b.htm.

 

Добавление VBScript

Вновь откройте созданный документ. Измените его, добавив выделенные строки.

Заметим что апострофы ( ' ) обозначают комментарий, а знак ( _ ) на конце строки обозначает, что следующая строка будет продолжена текущей.

 

    <HTML>

    <HEAD>

    <TITLE>Работа с VBScript: Упражнение 2</TITLE>

    <SCRIPT LANGUAGE="VBScript">

    <!--Эта инструкция добавляется для броузеров, не понимающих модули VBScript.

        Option Explicit

    Sub cmdCalculate_OnClick()

        Dim AmountofTax

        Dim CRLF

        Dim Message

        Dim Subtotal

        Dim TABSPACE

        Dim TAX_RATE

        Dim TotalCost

 

    'Присваивание значений константам

     TAX_RATE = 0.06

     CRLF = Chr(13) & Chr(10)

     TABSPACE = Chr(9)

 

    'Вычисления

     Subtotal = document.frmExercise2.txtQuantity.value _

      * Document.frmExercise2.txtUnitPrice.value

     AmountofTax = Subtotal * TAX_RATE

     TotalCost = Subtotal + AmountofTax

 

    'Отражение результатов.

     Message = "Общее количество для вашего ввода:"

     Message = Message & CRLF & CRLF

     Message = Message & "Промежуточная сумма:" & TABSPACE & "$" & Subtotal & CRLF

     Message = Message & "Налог:" & TABSPACE & "$" & AmountofTax & CRLF

     Message = Message & "Итого:" & TABSPACE & "$" & TotalCost

     MsgBox Message,,"Итог"

    End Sub

    -->

    </SCRIPT>

    </HEAD>

    <BODY>

    <H1>Ваше второе упражнение по VBScript</H1>

    <P>Переменные могут использоваться, чтобы сохранять и управлять значениями.

        Просмотреть демонстрацию этого можно введя количество и цену единицы товара

        в поля ниже и нажав кнопку "Вычислть стоимость". </P>

    <FORM NAME="frmExercise2">

        <TABLE>

            <TR>

                <TD><B>Колличество:</B></TD>

                <TD><INPUT TYPE="Text" NAME="txtQuantity" SIZE=5></TD>

            </TR>

            <TR>

                <TD><B>Цена устройства:</B></TD>

                <TD><INPUT TYPE="Text" NAME="txtUnitPrice" SIZE=5></TD>

            </TR>

        </TABLE>

        <BR>

        <INPUT TYPE="Button" NAME="cmdCalculate" VALUE="Вычислить стоимость">

    </FORM>

    </BODY>

    </HTML>

Сохраните файл и загрузите его в Internet Explorer. Введите 100 в поле Колличество и 10 -- в поле Цена устройства. Щелкните на кнопке Вычислить стоимость. Результат будет таким.

Как  это работает

Сразу видно, что этот сценарий намного более запутан, чем в Упражнении 1. Не бойтесь его размера. Как и в предыдущем уроке, мы пройдем его шаг за шагом.

После открывающего тега <SCRIPT> и комментария HTML выувидете такую строку:

Option Explicit

Помните, что это значит? Эта конструкция обязывает вас объявлятьзаранее все переменные.

Дальше мо создаем процедуру для обработки события OnClick на кнопке cmdCalculate.

Sub cmdCalculate_OnClick

Затем мы объявляем семь переменных, три из которых мы используе как константы. Последние можно отличить: они записаны заглавными буквами. В VBScript регистр не имеет значения (в отличии от JavaScript и XML). Мы используем смену регистра для упрощения чтения. Какие это переменные, внутренние или глобальные? Внутренние, так как они объявлены внутри процедуры.

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

' Присваивание значений константам

В следующих строках константам передаются значения. Chr ( ) -- это встроенная функция VBScript, возвращающая символ, имеющий заданный код ASCII. Коды13, 10 и 9 обозначают, соответственно, возврат коретки, переход на новую строку и табуляцию.

CRLF = Chr(13) & Chr(10)

TABSPACE = Chr(9)

Следующая строка показывает , как данные передаются из формы в сценарий и как затем обрабатываются. Два поля нашей формы названы txtQuantity и txtUnitPrice . Форму мы назвали frmExercise2 . Здесь мы обращаемся к нашему документу, затем к форме, далее к текстовому полю и, наконец, к его значению value . Value содержит то, что пользователь вводит в данное поле на странице. Знак * обозначает, что необходимо перемножить значение одного поля на значение другого.

ПРИМЕЧАНИЕ.    Обычно используемые операнды VBScript: + для сложения, - для вычитания, * для перемножения и / для деления.

Результат этого вычисления  будет сохранен в переменной Subtotal. Дальше мы выполняем некоторые дополнительные вычисления. И, наконец, результат этих вычислений показывается в диалоговом окне, созданным с помощью функции MsgBox. Знак & используется для связывания двух строковых переменных.

Как и на предыдущем уроке, не зацикливайтесь на деталях. Со временем вы все поймете.

Сохранить документ

Сохранить документ (.doc)

Распечатать документ

Напечатать

 

Следующий урок


Общение
» Чат

» Форум

Реклама 

Здесь может быть Ваша реклама

Поиск

» Поиск

Статистика 

Связь
» Web дизайнер

» Ваша реклама

» Отзывы

» О проекте

 

Сайт управляется системой uCoz