На этом шаге мы рассмотрим типы данных.
Начиная с этого шага, мы рассмотрим основные конструкции, используемые при написании сценариев на языке VBScript. Начнем изучение этих конструкций с типов данных.
В VBScript определен только один тип данных — Variant. Этот тип данных предназначен для хранения различного типа информации. В простейшем использовании тип Variant содержит либо числовые данные, либо символьные строки — типы данных, наиболее часто встречаемые при написании сценария.
Реально содержащиеся в вариантном типе данные могут быть одного из типов, называемых подтипами типа Variant представленных в таблице 1. Собственно говоря, эти подтипы охватываю все возможные типы данных, которые используются в языках Visual Basic и Visual Basic for Application.
Каждый подтип данных задается с помощью литералов (символьных констант).
#10-07-06 17:20# #10/7/2006# #10/07/06 17:20pm#
При использовании переменных вариантного типа данных в операторе сложения (+) результат зависит от того, какие подтипы данных в них содержатся. Если хотя бы один из операндов содержит число, то результатом будет сумма значений двух переменных (содержимое второго операнда преобразуется к числовому подтипу), если оба операнда содержат строковые данные, то результатом будет конкатенация строк.
Вариантный тип данных предоставляет эффективный способ обработки и хранения данных, не заботясь о типе хранимых данных. Если, например, при вычислениях первоначально в переменной вариантного типа хранилось значение типа Byte (число в диапазоне от 0 до 255), то в результате выполнения некоторых действий это значение стало отрицательным, то просто изменится представление этого числа в переменной (оно станет типа integer) и не возникнет никакой ошибки. Правда, за это удобство приходится платить используемой памятью: для вариантного типа данных вне зависимости от хранимого подтипа нужно 16 байт памяти.
Иногда в некоторых вычислениях необходимо явно преобразовать содержащийся в переменной подтип в другой. Для этого в VBScript имеется ряд функций преобразования в соответствующие типы. В таблице 1 последний столбец содержит имена функций преобразования в соответствующий подтип. Эти функции в качестве параметра принимают литералы, переменные и выражения.
В заключение отметим, что вариантная переменная может иметь несколько «специфических» значений:
Приведем пример использования указанных типов.
<HTML> <HEAD> <TITLE>Типы данных.</TITLE> <SCRIPT TYPE="text/vbscript" LANGUAGE=VBScript> <!-- Sub Button1_OnClick() Dim A,B 'Явное описание переменных. B = "34" 'Присваивание строки. alert "Строка B: "&B A = CInt(B) 'Преобразование строки в число. alert "Число A: "&A C = A + B 'Перед сложением строка 'преобразуется в число. alert "Их сумма: "&C D = CStr(C) E = B + D 'Сложение строк. alert "Сумма строк: "&E F = #10/7/06 17:20pm# 'Дата. alert "Пример даты: "&F End Sub '--> </SCRIPT> </HEAD> <BODY> <H2> Пример использования типов данных.</H2> <FORM> <INPUT TYPE=BUTTON VALUE="Нажмите кнопку!" NAME=BUTTON1> </FORM> </BODY> </HTML>
Текст этого HTML-документа можно взять здесь.
Рис.1. Результат просмотра документа в браузере
Следующий шаг будет посвящен рассмотрению переменных, массивов и констант.