Declarações diversas do VBScript

O VBScript tem algumas outras declarações importantes para ajudar os desenvolvedores a desenvolver um script eficiente. A tabela a seguir lista um conjunto dessas declarações importantes. Neste capítulo, discutiremos cada uma dessas declarações em detalhes com exemplos.

Categoria Nome da função / nome da declaração
Opções Opção Explícita
ID do motor de script ScriptEngine
variantes IsArray, IsEmpty, IsNull, IsNumeric, IsObject, TypeName
Expressão Eval, Execute
Declaração de Controle Com ... Terminar Com
Função Matemática Aleatória

Opção Explícita

Option Explicit força o desenvolvedor a declarar as variáveis ​​usando Dim declaração antes de serem usados ​​em alguma parte do código.

Sintaxe

Option Explicit

Exemplo

Se usarmos Option Explicit e se não declararmos as variáveis, o interpretador irá lançar um erro.

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

ScriptEnginerepresenta os detalhes da linguagem de script em uso. Também é usado em combinação comScriptEngineMajorVersion, ScriptEngineMinor Version, ScriptEngineBuildVersion que fornece a versão principal do mecanismo vbscript, a versão secundária do mecanismo vbscript e a versão de compilação do vbscript, respectivamente.

Sintaxe

ScriptEngine

Exemplo

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

Salve o arquivo com extensão .html ao executar o script no IE, o seguinte resultado é mostrado na tela.

Version VBScript - 5.8.16996

Está vazia

A função IsEmpty é usada para verificar se a expressão está vazia ou não. Ele retorna um valor booleano.IsEmptyretorna True se a variável não foi inicializada ou explicitamente definida como Vazia. Caso contrário, a expressão retorna False.

Sintaxe

IsEmpty(expression)

Exemplo

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

Salve o arquivo com extensão .html ao executar o script no IE, o seguinte resultado é mostrado na tela.

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

É nulo

A função IsNull é usada para verificar se a expressão possui dados válidos ou não. Ele retorna um valor booleano.IsNull retorna True se a variável for Null, caso contrário, a expressão retorna False.

Sintaxe

IsNull(expression)

Exemplo

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

Salve o arquivo com extensão .html ao executar o script no IE, o seguinte resultado é mostrado na tela.

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

IsObject

A função IsObject é usada para verificar se a expressão tem ou não um objeto válido. Ele retorna um valor booleano.IsObject retorna True se a expressão contém um subtipo de objeto, caso contrário, a expressão retorna False.

Sintaxe

IsObject(expression)

Exemplo

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

Salve o arquivo com extensão .html ao executar o script no IE, o seguinte resultado é mostrado na tela.

Line 1 : True
Line 2 : False

IsNumeric

A função IsNumeric é usada para verificar se a expressão tem ou não um subtipo de número. Ele retorna um valor booleano.IsObject retorna True se a expressão contém um subtipo de número, caso contrário, a expressão retorna False.

Sintaxe

IsNumeric(expression)

Exemplo

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

Salve o arquivo com extensão .html ao executar o script no IE, o seguinte resultado é mostrado na tela.

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

Digite o nome

A função TypeName é usada para retornar as informações de subtipo de variante da variável.

Sintaxe

TypeName(varname)

A função Typename pode retornar qualquer um dos seguintes valores.

  • Byte - valor do byte

  • Inteiro - Valor Inteiro

  • Longo - Valor inteiro longo

  • Único - Valor de ponto flutuante de precisão simples

  • Duplo - valor de ponto flutuante de precisão dupla

  • Moeda - Valor da moeda

  • Decimal - valor decimal

  • Data - Valor de data ou hora

  • String - Valor da string de caracteres

  • Boolean - Valor Booleano

  • Vazio - Valor não inicializado

  • Nulo - Sem Dados Válidos

  • Objeto - nome de tipo do objeto

  • Nothing - Variável de objeto que ainda não se refere a uma instância de objeto

  • Error

Exemplo

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

Salve o arquivo com extensão .html ao executar o script no IE, o seguinte resultado é mostrado na tela.

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

Eval

A função Eval executa uma expressão e retorna o resultado como uma string ou um número.

Sintaxe

Eval(expression)

O argumento Expression pode ser uma expressão de string ou um número. Se você passar para a função Eval uma string que não contém uma expressão numérica ou um nome de função, mas apenas uma string de texto simples, ocorre um erro em tempo de execução. Por exemplo, Eval ("VBScript") resulta em um erro.

Exemplo

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

Salve o arquivo com extensão .html ao executar o script no IE, o seguinte resultado é mostrado na tela.

20
false
15

Executar

A instrução Execute aceita o argumento que é uma expressão de string contendo uma ou mais instruções para execução.

Sintaxe

Execute(expression)

No VBScript, a = b pode ser interpretado de duas maneiras. Ele pode ser tratado como uma instrução de atribuição em que o valor de x é atribuído a y. Também pode ser interpretado como uma expressão que testa se a e b têm o mesmo valor. Se o fizerem, o resultado é True; se não forem, o resultado é False. A instrução Execute sempre usa a primeira interpretação, enquanto a instrução Eval sempre usa a segunda.

Exemplo

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

Salve o arquivo com extensão .html ao executar o script no IE, o seguinte resultado é mostrado na tela.

VBScript
VBScript

Com..Fim com

A instrução With nos permite realizar uma série de operações em um objeto especificado sem mencionar explicitamente o nome do objeto repetidamente.

Sintaxe

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

Exemplo

Ao executar o script a seguir, o Winword é aberto e o texto especificado é inserido.

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

Aleatória

A instrução Randomize inicializa o gerador de número aleatório, que é útil para os desenvolvedores gerarem um número aleatório.

Sintaxe

Randomize [number]

Exemplo

Ao executar o script a seguir, o Winword é aberto e o texto especificado é inserido.

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

Salve o script acima como HTML e, ao executar o script no IE, a seguinte saída é mostrada.

42