В VBScript есть несколько других важных утверждений, которые помогут разработчикам разработать эффективный скрипт. В следующей таблице приведен список таких важных утверждений. В этой главе мы подробно обсудим каждое из этих утверждений с примерами.
категория | Имя функции / Название оператора |
---|---|
Опции | Вариант Явный |
ID скриптового движка | ScriptEngine |
варианты | IsArray, IsEmpty, IsNull, IsNumeric, IsObject, TypeName |
выражение | Eval, Execute |
Контрольное заявление | С … Конец |
Математическая функция | Перемешайте |
Вариант Явный
Опция Explicit заставляет разработчика объявлять переменные с помощью оператора Dim, прежде чем они будут использованы в какой-то части кода.
Синтаксис
Option Explicit
пример
Если мы используем Option Explicit и если мы не объявляем переменные, то интерпретатор выдаст ошибку.
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Option Explicit Dim x,y,z,a x = 10 y = 20 z = fnadd(x,y) a = fnmultiply(x,y) Function fnadd(x,y) fnadd = x+y End Function </script> </body> </html>
ScriptEngine
ScriptEngine представляет подробную информацию об используемом языке сценариев. Он также используется в сочетании с ScriptEngineMajorVersion, ScriptEngineMinor Version, ScriptEngineBuildVersion, который дает основную версию механизма vbscript, вспомогательную версию механизма vbscript и версию сборки vbscript соответственно.
Синтаксис
ScriptEngine
пример
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Dim scriptdetails scriptdetails = " Version " & ScriptEngine & " - " 'For getting Major version, use ScriptEngineMajorVersion' scriptdetails = scriptdetails & ScriptEngineMajorVersion & "." 'For getting Minor version, use ScriptEngineMinorVersion' scriptdetails = scriptdetails & ScriptEngineMinorVersion & "." 'For getting Build version, use ScriptEngineBuildVersion' scriptdetails = scriptdetails & ScriptEngineBuildVersion Document.write scriptdetails </script> </body> </html>
Сохраните файл с расширением .html после выполнения скрипта в IE, на экране отобразится следующий результат.
Version VBScript - 5.8.16996
Пустой
Функция IsEmpty используется для проверки, является ли выражение пустым. Возвращает логическое значение. IsEmpty возвращает True, если переменная неинициализирована или явно установлена в значение Empty. В противном случае выражение возвращает False.
Синтаксис
IsEmpty(expression)
пример
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Dim var, MyCheck MyCheck = IsEmpty(var) Document.write "Line 1 : " & MyCheck & "<br />" var = Null ' Assign Null. MyCheck = IsEmpty(var) Document.write "Line 2 : " & MyCheck & "<br />" var = Empty ' Assign Empty. MyCheck = IsEmpty(var) Document.write "Line 3 : " & MyCheck & "<br />" </script> </body> </html>
Сохраните файл с расширением .html после выполнения скрипта в IE, на экране отобразится следующий результат.
Line 1 : True Line 2 : False Line 3 : True
Нулевой
Функция IsNull используется для проверки наличия в выражении правильных данных. Возвращает логическое значение. IsNull возвращает True, если переменная равна Null, в противном случае выражение возвращает False.
Синтаксис
IsNull(expression)
пример
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Dim var, res res = IsNull(var) document.write "Line 1 : " & res & "<br />" var = Null res = IsNull(var) document.write "Line 2 : " & res & "<br />" var = Empty res = IsNull(var) document.write "Line 3 : " & res & "<br />" </script> </body> </html>
Сохраните файл с расширением .html после выполнения скрипта в IE, на экране отобразится следующий результат.
Line 1 : False Line 2 : True Line 3 : False
IsObject
Функция IsObject используется для проверки, имеет ли выражение допустимый объект. Возвращает логическое значение. IsObject возвращает True, если выражение содержит подтип объекта, в противном случае выражение возвращает False.
Синтаксис
IsObject(expression)
пример
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Dim fso,b b = 10 set fso = createobject("Scripting.Filesystemobject") x = isobject(fso) Document.write "Line 1 : " & x & "<br />" y = isobject(b) Document.write "Line 2 : " & y & "<br />" </script> </body> </html>
Сохраните файл с расширением .html после выполнения скрипта в IE, на экране отобразится следующий результат.
Line 1 : True Line 2 : False
IsNumeric
Функция IsNumeric используется для проверки того, имеет ли выражение подтип числа. Возвращает логическое значение. IsObject возвращает True, если выражение содержит подтип числа, в противном случае выражение возвращает False.
Синтаксис
IsNumeric(expression)
пример
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Dim var, chk var = 20 chk = IsNumeric(var) Document.write "Line 1 : " & chk & "<br />" var = "3.1415935745" chk = IsNumeric(var) Document.write "Line 2 : " & chk & "<br / >" var = "20 Chapter 23.123 VBScript" chk = IsNumeric(var) Document.write "Line 3 : " & chk & "<br / >" </script> </body> </html>
Сохраните файл с расширением .html после выполнения скрипта в IE, на экране отобразится следующий результат.
Line 1 : True Line 2 : True Line 3 : False
TypeName
Функция TypeName используется для возврата информации о подтипе варианта переменной.
Синтаксис
TypeName(varname)
Функция Typename может возвращать любое из следующих значений.
-
Byte — значение байта
-
Integer — целочисленное значение
-
Long — Long Integer Value
-
Single — Значение с плавающей точкой одинарной точности
-
Double — значение с плавающей точкой двойной точности
-
Валюта — стоимость валюты
-
Десятичное — десятичное значение
-
Дата — Дата или Время Значение
-
String — Строка символов Значение
-
Булево — булево значение
-
Пусто — неинициализированное значение
-
Null — нет действительных данных
-
Object — имя типа объекта
-
Ничего — переменная объекта, которая еще не ссылается на экземпляр объекта
-
ошибка
Byte — значение байта
Integer — целочисленное значение
Long — Long Integer Value
Single — Значение с плавающей точкой одинарной точности
Double — значение с плавающей точкой двойной точности
Валюта — стоимость валюты
Десятичное — десятичное значение
Дата — Дата или Время Значение
String — Строка символов Значение
Булево — булево значение
Пусто — неинициализированное значение
Null — нет действительных данных
Object — имя типа объекта
Ничего — переменная объекта, которая еще не ссылается на экземпляр объекта
ошибка
пример
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Dim ArrVar(2), vartype NullVar = Null ' Assign Null value. vartype = TypeName(3.1450) Document.write "Line 1 : " & vartype & "<br />" vartype = TypeName(432) Document.write "Line 2 : " & vartype & "<br />" vartype = TypeName("Microsoft") Document.write "Line 3 : " & vartype & "<br />" vartype = TypeName(NullVar) Document.write "Line 4 : " & vartype & "< br />" vartype = TypeName(ArrVar) Document.write "Line 5 : " & vartype & "<br />" </script> </body> </html>
Сохраните файл с расширением .html после выполнения скрипта в IE, на экране отобразится следующий результат.
Line 1 : Double Line 2 : Integer Line 3 : String Line 4 : Null Line 5 : Variant()
Eval
Функция Eval выполняет выражение и возвращает результат в виде строки или числа.
Синтаксис
Eval(expression)
Аргумент Expression может быть строковым выражением или числом. Если вы передаете в функцию Eval строку, которая не содержит числовое выражение или имя функции, а содержит только простую текстовую строку, возникает ошибка во время выполнения. Например, Eval («VBScript») приводит к ошибке.
пример
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Document.write Eval("10 + 10") & "<br />" Document.write Eval("101 = 200") & "<br />" Document.write Eval("5 * 3") & "<br />" </script> </body> </html>
Сохраните файл с расширением .html после выполнения скрипта в IE, на экране отобразится следующий результат.
20 false 15
казнить
Оператор Execute принимает аргумент, который является строковым выражением, содержащим один или несколько операторов для выполнения.
Синтаксис
Execute(expression)
В VBScript a = b можно интерпретировать двумя способами. Его можно рассматривать как оператор присваивания, в котором значение x присваивается y. Это также может быть интерпретировано как выражение, которое проверяет, имеют ли a и b одинаковые значения. Если они это сделают, результат — Истина; если это не так, результатом является Ложь. Оператор Execute всегда использует первую интерпретацию, а оператор Eval всегда использует вторую.
пример
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Dim x x = "Global" y = "VBScript" Execute("x = y") msgbox x msgbox y </script> </body> </html>
Сохраните файл с расширением .html после выполнения скрипта в IE, на экране отобразится следующий результат.
VBScript VBScript
С … Конец с
Оператор With позволяет нам выполнять серию операций с указанным объектом без явного повторного упоминания имени объекта.
Синтаксис
With (objectname) statement 1 statement 2 statement 3 ... ... statement n End With
пример
После выполнения следующего скрипта Winword открывается и вводится указанный текст.
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Msg = "Vbscript" & vbCrLf & "Programming" Set objWord = CreateObject("Word.Application") objWord.Visible = True ' Objects methods are accessed without requaliyfying the objects again.' With objWord .Documents.Add .Selection.TypeText Msg .Selection.WholeStory End With </script> </body> </html>
Перемешайте
Оператор Randomize инициализирует генератор случайных чисел, который помогает разработчикам генерировать случайные числа.
Синтаксис
Randomize [number]
пример
После выполнения следующего скрипта Winword открывается и вводится указанный текст.
<!DOCTYPE html> <html> <body> <script language = "vbscript" type = "text/vbscript"> Dim MyValue Randomize MyValue = Int((100 * Rnd) + 1) ' Generate random value between 1 and 100. MsgBox MyValue </script> </body> </html>
Сохраните вышеприведенный скрипт как HTML, и после выполнения скрипта в IE будет показан следующий вывод.