Różne instrukcje VBScript
VBScript zawiera kilka innych ważnych instrukcji, które pomogą programistom w opracowaniu wydajnego skryptu. Poniższa tabela zawiera zestaw takich ważnych instrukcji. W tym rozdziale omówimy szczegółowo każde z tych stwierdzeń wraz z przykładami.
Kategoria | Nazwa funkcji / Nazwa instrukcji |
---|---|
Opcje | Opcja jawna |
Identyfikator silnika skryptów | ScriptEngine |
warianty | IsArray, IsEmpty, IsNull, IsNumeric, IsObject, TypeName |
Wyrażenie | Eval, Execute |
Oświadczenie kontroli | Z ... Koniec z |
Funkcja matematyczna | Losuj |
Opcja jawna
Option Explicit zmusza dewelopera do zadeklarowania zmiennych za pomocą Dim instrukcji, zanim zostaną użyte w jakiejś części kodu.
Składnia
Option Explicit
Przykład
Jeśli używamy Option Explicit a jeśli nie zadeklarujemy zmiennych, interpreter zgłosi błąd i wyświetli błąd.
<!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
ScriptEngineprzedstawia szczegóły używanego języka skryptowego. Jest również używany w połączeniu zScriptEngineMajorVersion, ScriptEngineMinor Version, ScriptEngineBuildVersion która podaje odpowiednio główną wersję silnika vbscript, wersję pomocniczą silnik vbscript i wersję kompilacji vbscript.
Składnia
ScriptEngine
Przykład
<!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>
Zapisz plik z rozszerzeniem .html po wykonaniu skryptu w IE, na ekranie wyświetli się następujący wynik.
Version VBScript - 5.8.16996
Jest pusty
Funkcja IsEmpty służy do sprawdzania, czy wyrażenie jest puste. Zwraca wartość logiczną.IsEmptyzwraca True, jeśli zmienna jest niezainicjowana lub jawnie ustawiona na Empty. W przeciwnym razie wyrażenie zwraca False.
Składnia
IsEmpty(expression)
Przykład
<!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>
Zapisz plik z rozszerzeniem .html po wykonaniu skryptu w IE, na ekranie wyświetli się następujący wynik.
Line 1 : True
Line 2 : False
Line 3 : True
IsNull
Funkcja IsNull służy do sprawdzania, czy wyrażenie zawiera prawidłowe dane. Zwraca wartość logiczną.IsNull zwraca True, jeśli zmienna ma wartość Null, w przeciwnym razie wyrażenie zwraca False.
Składnia
IsNull(expression)
Przykład
<!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>
Zapisz plik z rozszerzeniem .html po wykonaniu skryptu w IE, na ekranie wyświetli się następujący wynik.
Line 1 : False
Line 2 : True
Line 3 : False
IsObject
Funkcja IsObject służy do sprawdzania, czy wyrażenie ma prawidłowy Object. Zwraca wartość logiczną.IsObject zwraca True, jeśli wyrażenie zawiera podtyp obiektu, w przeciwnym razie wyrażenie zwraca False.
Składnia
IsObject(expression)
Przykład
<!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>
Zapisz plik z rozszerzeniem .html po wykonaniu skryptu w IE, na ekranie wyświetli się następujący wynik.
Line 1 : True
Line 2 : False
IsNumeric
Funkcja IsNumeric służy do sprawdzania, czy wyrażenie ma podtyp liczby. Zwraca wartość logiczną.IsObject zwraca True, jeśli wyrażenie zawiera podtyp liczbowy, w przeciwnym razie wyrażenie zwraca False.
Składnia
IsNumeric(expression)
Przykład
<!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>
Zapisz plik z rozszerzeniem .html po wykonaniu skryptu w IE, na ekranie wyświetli się następujący wynik.
Line 1 : True
Line 2 : True
Line 3 : False
Wpisz imię
Funkcja TypeName służy do zwracania informacji o podtypie wariantu zmiennej.
Składnia
TypeName(varname)
Funkcja Typename może zwracać dowolną z następujących wartości.
Bajt - wartość bajtu
Liczba całkowita - wartość całkowita
Długa - długa wartość całkowita
Pojedyncza - wartość zmiennoprzecinkowa o pojedynczej precyzji
Double - wartość zmiennoprzecinkowa podwójnej precyzji
Waluta - wartość waluty
Dziesiętny - wartość dziesiętna
Data - wartość daty lub godziny
Ciąg - Wartość ciągu znaków
Boolean - wartość logiczna
Pusta - niezainicjowana wartość
Null - brak prawidłowych danych
Obiekt - nazwa typu obiektu
Nic - zmienna obiektu, która jeszcze nie odwołuje się do instancji obiektu
Error
Przykład
<!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>
Zapisz plik z rozszerzeniem .html po wykonaniu skryptu w IE, na ekranie wyświetli się następujący wynik.
Line 1 : Double
Line 2 : Integer
Line 3 : String
Line 4 : Null
Line 5 : Variant()
Eval
Funkcja Eval wykonuje wyrażenie i zwraca wynik jako ciąg lub liczbę.
Składnia
Eval(expression)
Argument Wyrażenie może być wyrażeniem łańcuchowym lub liczbą. Jeśli przekażesz do funkcji Eval ciąg, który nie zawiera wyrażenia liczbowego ani nazwy funkcji, ale tylko prosty ciąg tekstowy, wystąpi błąd w czasie wykonywania. Na przykład Eval („VBScript”) powoduje błąd.
Przykład
<!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>
Zapisz plik z rozszerzeniem .html po wykonaniu skryptu w IE, na ekranie wyświetli się następujący wynik.
20
false
15
Wykonać
Instrukcja Execute akceptuje argument, który jest wyrażeniem ciągu zawierającym co najmniej jedną instrukcję do wykonania.
Składnia
Execute(expression)
W VBScript a = b można interpretować na dwa sposoby. Można go traktować jako instrukcję przypisania, w której wartość x jest przypisana y. Może być również interpretowane jako wyrażenie sprawdzające, czy a i b mają tę samą wartość. Jeśli tak, wynik jest prawdziwy; jeśli nie, wynik jest fałszywy. Instrukcja Execute zawsze używa pierwszej interpretacji, podczas gdy instrukcja Eval zawsze używa drugiej.
Przykład
<!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>
Zapisz plik z rozszerzeniem .html po wykonaniu skryptu w IE, na ekranie wyświetli się następujący wynik.
VBScript
VBScript
Skończyć z
Instrukcja With umożliwia nam wykonanie serii operacji na określonym obiekcie bez wielokrotnego jawnego wymieniania nazwy obiektu.
Składnia
With (objectname)
statement 1
statement 2
statement 3
...
...
statement n
End With
Przykład
Po wykonaniu następującego skryptu Winword zostaje otwarty i wprowadzony zostaje określony tekst.
<!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>
Losuj
Instrukcja Randomize inicjuje generator liczb losowych, który jest pomocny dla programistów w celu wygenerowania liczby losowej.
Składnia
Randomize [number]
Przykład
Po wykonaniu następującego skryptu Winword zostaje otwarty i wprowadzony zostaje określony tekst.
<!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>
Zapisz powyższy skrypt jako HTML i po wykonaniu skryptu w przeglądarce IE, zostanie wyświetlony następujący wynik.
42