Verschiedene VBScript-Anweisungen

VBScript enthält einige weitere wichtige Anweisungen, die Entwicklern bei der Entwicklung eines effizienten Skripts helfen sollen. In der folgenden Tabelle sind einige dieser wichtigen Aussagen aufgeführt. In diesem Kapitel werden wir jede dieser Aussagen anhand von Beispielen ausführlich diskutieren.

Kategorie Funktionsname / Anweisungsname
Optionen Option Explizit
Skript-Engine-ID ScriptEngine
Varianten IsArray, IsEmpty, IsNull, IsNumeric, IsObject, TypeName
Ausdruck Auswerten, ausführen
Kontrollanweisung Mit ... Ende mit
Mathematische Funktion Randomisieren

Option Explizit

Option Explicit zwingt den Entwickler, die Variablen mit zu deklarieren Dim Anweisung, bevor sie in einem Teil des Codes verwendet werden.

Syntax

Option Explicit

Beispiel

Wenn wir verwenden Option Explicit und wenn wir die Variablen nicht deklarieren, wird der Interpreter werfen und Fehler machen.

<!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

ScriptEnginestellt die Details der verwendeten Skriptsprache dar. Es wird auch in Kombination mit verwendetScriptEngineMajorVersion, ScriptEngineMinor Version, ScriptEngineBuildVersion Dies gibt die Hauptversion der VBScript-Engine, die Nebenversion die VBScript-Engine und die Build-Version von VBScript an.

Syntax

ScriptEngine

Beispiel

<!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>

Speichern Sie die Datei mit der Erweiterung .html, wenn Sie das Skript im IE ausführen. Das folgende Ergebnis wird auf dem Bildschirm angezeigt.

Version VBScript - 5.8.16996

Ist leer

Mit der Funktion IsEmpty wird geprüft, ob der Ausdruck leer ist oder nicht. Es gibt einen Booleschen Wert zurück.IsEmptyGibt True zurück, wenn die Variable nicht initialisiert oder explizit auf Leer gesetzt ist. Andernfalls gibt der Ausdruck False zurück.

Syntax

IsEmpty(expression)

Beispiel

<!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>

Speichern Sie die Datei mit der Erweiterung .html, wenn Sie das Skript im IE ausführen. Das folgende Ergebnis wird auf dem Bildschirm angezeigt.

Line 1 : True
Line 2 : False
Line 3 : True

Ist Null

Mit der Funktion IsNull wird überprüft, ob der Ausdruck gültige Daten enthält. Es gibt einen Booleschen Wert zurück.IsNull Gibt True zurück, wenn die Variable Null ist, andernfalls gibt der Ausdruck False zurück.

Syntax

IsNull(expression)

Beispiel

<!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>

Speichern Sie die Datei mit der Erweiterung .html, wenn Sie das Skript im IE ausführen. Das folgende Ergebnis wird auf dem Bildschirm angezeigt.

Line 1 : False
Line 2 : True
Line 3 : False

IsObject

Mit der IsObject-Funktion wird überprüft, ob der Ausdruck ein gültiges Objekt enthält. Es gibt einen Booleschen Wert zurück.IsObject Gibt True zurück, wenn der Ausdruck einen Objektuntertyp enthält, andernfalls gibt der Ausdruck False zurück.

Syntax

IsObject(expression)

Beispiel

<!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>

Speichern Sie die Datei mit der Erweiterung .html, wenn Sie das Skript im IE ausführen. Das folgende Ergebnis wird auf dem Bildschirm angezeigt.

Line 1 : True
Line 2 : False

IsNumeric

Mit der IsNumeric-Funktion wird überprüft, ob der Ausdruck einen Zahlenuntertyp hat oder nicht. Es gibt einen booleschen Wert zurück.IsObject Gibt True zurück, wenn der Ausdruck einen Zahlenuntertyp enthält, andernfalls gibt der Ausdruck False zurück.

Syntax

IsNumeric(expression)

Beispiel

<!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>

Speichern Sie die Datei mit der Erweiterung .html, wenn Sie das Skript im IE ausführen. Das folgende Ergebnis wird auf dem Bildschirm angezeigt.

Line 1 : True
Line 2 : True
Line 3 : False

Modellname

Die TypeName-Funktion wird verwendet, um die varianten Subtypinformationen der Variablen zurückzugeben.

Syntax

TypeName(varname)

Die Funktion Typename kann einen der folgenden Werte zurückgeben.

  • Byte - Bytewert

  • Ganzzahl - Ganzzahliger Wert

  • Long - Long Integer Value

  • Einfach - Gleitkommawert mit einfacher Genauigkeit

  • Double - Gleitkommawert mit doppelter Genauigkeit

  • Währung - Währungswert

  • Dezimal - Dezimalwert

  • Datum - Datum oder Uhrzeit

  • String - Zeichenkettenwert

  • Boolean - Boolescher Wert

  • Leer - nicht initialisierter Wert

  • Null - Keine gültigen Daten

  • Objekt - Typname des Objekts

  • Nichts - Objektvariable, die sich noch nicht auf eine Objektinstanz bezieht

  • Error

Beispiel

<!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>

Speichern Sie die Datei mit der Erweiterung .html, wenn Sie das Skript im IE ausführen. Das folgende Ergebnis wird auf dem Bildschirm angezeigt.

Line 1 : Double
Line 2 : Integer
Line 3 : String
Line 4 : Null
Line 5 : Variant()

Eval

Die Eval-Funktion führt einen Ausdruck aus und gibt das Ergebnis entweder als Zeichenfolge oder als Zahl zurück.

Syntax

Eval(expression)

Das Argument Ausdruck kann ein Zeichenfolgenausdruck oder eine Zahl sein. Wenn Sie eine Zeichenfolge an die Eval-Funktion übergeben, die keinen numerischen Ausdruck oder Funktionsnamen, sondern nur eine einfache Textzeichenfolge enthält, tritt ein Laufzeitfehler auf. Beispielsweise führt Eval ("VBScript") zu einem Fehler.

Beispiel

<!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>

Speichern Sie die Datei mit der Erweiterung .html, wenn Sie das Skript im IE ausführen. Das folgende Ergebnis wird auf dem Bildschirm angezeigt.

20
false
15

Ausführen

Die Execute-Anweisung akzeptiert ein Argument, das ein Zeichenfolgenausdruck ist, der eine oder mehrere Anweisungen zur Ausführung enthält.

Syntax

Execute(expression)

In VBScript kann a = b auf zwei Arten interpretiert werden. Es kann als Zuweisungsanweisung behandelt werden, bei der der Wert von x y zugewiesen wird. Es kann auch als Ausdruck interpretiert werden, der prüft, ob a und b denselben Wert haben. Wenn dies der Fall ist, ist das Ergebnis wahr. Ist dies nicht der Fall, ist das Ergebnis Falsch. Die Execute-Anweisung verwendet immer die erste Interpretation, während die Eval-Anweisung immer die zweite verwendet.

Beispiel

<!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>

Speichern Sie die Datei mit der Erweiterung .html, wenn Sie das Skript im IE ausführen. Das folgende Ergebnis wird auf dem Bildschirm angezeigt.

VBScript
VBScript

Mit ... Ende mit

Mit der With-Anweisung können wir eine Reihe von Operationen an einem bestimmten Objekt ausführen, ohne den Objektnamen immer wieder explizit zu erwähnen.

Syntax

With (objectname)
   statement 1
   statement 2
   statement 3
   ...
   ...
   statement n
End With

Beispiel

Beim Ausführen des folgenden Skripts wird Winword geöffnet und der angegebene Text eingegeben.

<!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>

Randomisieren

Die Randomize-Anweisung initialisiert den Zufallszahlengenerator, der für die Entwickler hilfreich ist, um eine Zufallszahl zu generieren.

Syntax

Randomize [number]

Beispiel

Beim Ausführen des folgenden Skripts wird Winword geöffnet und der angegebene Text eingegeben.

<!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>

Speichern Sie das obige Skript als HTML und beim Ausführen des Skripts im IE wird die folgende Ausgabe angezeigt.

42