VBScript - Guia Rápido
VBScript significa Visual BScripting asic que forma um subconjunto do Visual Basic for Applications (VBA). O VBA é um produto da Microsoft incluído NÃO apenas em outros produtos da Microsoft, como MS Project e MS Office, mas também em ferramentas de terceiros, como AUTO CAD.
Recursos do VBScript
VBScript é uma linguagem de script leve, que possui um interpretador extremamente rápido.
O VBScript, em sua maior parte, não faz distinção entre maiúsculas e minúsculas. Possui uma sintaxe muito simples, fácil de aprender e implementar.
Ao contrário do C ++ ou Java, o VBScript é uma linguagem de script baseada em objetos e NÃO uma linguagem de programação orientada a objetos.
Ele usa o Component Object Model (COM) para acessar os elementos do ambiente em que está sendo executado.
A execução bem-sucedida do VBScript pode acontecer apenas se for executado em um ambiente host, como o Internet Explorer (IE), Serviços de Informação da Internet (IIS) e Windows Scripting Host (WSH)
VBscript - Histórico de versões e usos
O VBScript foi introduzido pela Microsoft em 1996 e sua primeira versão foi 1.0. A versão estável atual do VBScript é 5.8, que está disponível como parte do IE8 ou Windows 7. As áreas de uso do VBScript são em grande quantidade e não estão restritas à lista abaixo.
VBScript é usado como uma linguagem de script em uma das ferramentas de teste de automação populares - Quick Test Professional abreviado como QTP
Host de script do Windows, que é usado principalmente por administradores de sistema do Windows para automatizar a área de trabalho do Windows.
Active Server Pages (ASP), um ambiente de script do lado do servidor para a criação de páginas da Web dinâmicas que usam VBScript ou Java Script.
VBScript é usado para scripts do lado do cliente no Microsoft Internet Explorer.
O Microsoft Outlook Forms geralmente é executado em VBScript; entretanto, a programação em nível de aplicativo depende do VBA (Outlook 2000 em diante).
Desvantagens
VBscript é usado apenas por navegadores do IE. Outros navegadores como Chrome, Firefox DONOT suportam VBScript. Portanto, o JavaScript é preferível ao VBScript.
VBScript tem um suporte de linha de comando limitado.
Como não há ambiente de desenvolvimento disponível por padrão, a depuração é difícil.
Onde está o VBScript hoje?
A versão atual do VBScript é 5.8 e, com o recente desenvolvimento do .NET framework, a Microsoft decidiu fornecer suporte futuro ao VBScript dentro do ASP.NET para desenvolvimento web. Portanto, NÃO haverá mais versões novas do mecanismo VBScript, mas todas as correções de defeitos e problemas de segurança estão sendo tratados pela equipe de engenharia de apoio da Microsoft. No entanto, o mecanismo VBScript seria fornecido como parte de todo o Microsoft Windows e IIS por padrão.
Seu primeiro VBScript
Vamos escrever um VBScript para imprimir "Hello World".
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
document.write("Hello World!")
</script>
</body>
</html>
No exemplo acima, chamamos uma função document.write , que grava uma string no documento HTML. Esta função pode ser usada para escrever texto, HTML ou ambos. Portanto, o código acima exibirá o seguinte resultado -
Hello World!
Espaços em branco e quebras de linha
VBScript ignora espaços, guias e novas linhas que aparecem nos programas VBScript. É possível usar espaços, tabulações e novas linhas livremente dentro do programa, então você está livre para formatar e recuar seus programas de uma maneira limpa e consistente que torna o código fácil de ler e entender.
Formatação
O VBScript é baseado no Visual Basic da Microsoft. Ao contrário do JavaScript, nenhum terminador de instrução, como ponto e vírgula, é usado para encerrar uma instrução específica.
Sintaxe de linha única
Os dois pontos são usados quando duas ou mais linhas do VBScript devem ser escritas em uma única linha. Portanto, no VBScript, os dois pontos atuam como um separador de linha.
<script language = "vbscript" type = "text/vbscript">
var1 = 10 : var2 = 20
</script>
Sintaxe de múltiplas linhas
Quando uma instrução em VBScript é longa e o usuário deseja quebrá-la em várias linhas, o usuário deve usar o sublinhado "_". Isso melhora a legibilidade do código. O exemplo a seguir ilustra como trabalhar com várias linhas.
<script language = "vbscript" type = "text/vbscript">
var1 = 10
var2 = 20
Sum = var1 + var2
document.write("The Sum of two numbers"&_"var1 and var2 is " & Sum)
</script>
Palavras reservadas
A lista a seguir mostra as palavras reservadas em VBScript. Estas palavras reservadas NÃO DEVEM ser usadas como uma constante ou variável ou qualquer outro nome de identificador.
Ciclo | LSet | Eu |
Mod | Novo | Próximo |
Não | Nada | Nulo |
Em | Opção | Opcional |
Ou | ParamArray | Preservar |
Privado | Público | RaiseEvent |
ReDim | Rem | Currículo |
RSet | Selecione | Conjunto |
Compartilhado | solteiro | Estático |
Pare | Sub | Então |
Para | Verdadeiro | Tipo |
E | Como | boleano |
ByRef | Byte | ByVal |
Ligar | Caso | Classe |
Const | Moeda | Depurar |
Dim | Faz | em dobro |
Cada | Outro | ElseIf |
Vazio | Fim | Fim se |
Enum | Eqv | Evento |
Saída | Falso | Para |
Função | Pegue | Vamos para |
E se | Criança levada | Implementos |
Dentro | Inteiro | É |
Deixei | Gostar | Grandes |
Tipo de | Até | Variante |
Wend | Enquanto | Com |
Xor | Eval | Executar |
Msgbox | Apagar | ExecuteGlobal |
Opção Explícita | Aleatória | SendKeys |
Sensibilidade ao Caso
VBScript é um case-insensitive language. Isso significa que palavras-chave do idioma, variáveis, nomes de funções e quaisquer outros identificadores NÃO precisam ser digitados com letras maiúsculas consistentes. Portanto, os identificadores int_counter, INT_Counter e INT_COUNTER têm o mesmo significado no VBScript.
Comentários em VBScript
Os comentários são usados para documentar a lógica do programa e as informações do usuário com as quais outros programadores podem trabalhar perfeitamente no mesmo código no futuro. Pode incluir informações como desenvolvidas por, modificadas por e também pode incluir lógica incorporada. Os comentários são ignorados pelo intérprete durante a execução. Os comentários em VBScript são denotados por dois métodos.
1. Any statement that starts with a Single Quote (‘) is treated as comment.
A seguir está o exemplo -
<script language = "vbscript" type = "text/vbscript">
<!—
' This Script is invoked after successful login
' Written by : TutorialsPoint
' Return Value : True / False
//- >
</script>
2. Any statement that starts with the keyword “REM”.
A seguir está o exemplo -
<script language = "vbscript" type = "text/vbscript">
<!—
REM This Script is written to Validate the Entered Input
REM Modified by : Tutorials point/user2
//- >
</script>
Nem todos os navegadores modernos suportam VBScript. O VBScript é compatível apenas com o Internet Explorer da Microsoft, enquanto outros navegadores (Firefox e Chrome) oferecem suporte apenas para JavaScript. Conseqüentemente, os desenvolvedores normalmente preferem JavaScript em vez de VBScript.
Embora o Internet Explorer (IE) ofereça suporte a VBScript, pode ser necessário ativar ou desativar esse recurso manualmente. Este tutorial irá informá-lo sobre o procedimento de ativação e desativação do suporte VBScript no Internet Explorer.
VBScript no Internet Explorer
Aqui estão alguns passos simples para ligar ou desligar o VBScript no seu Internet Explorer -
Siga Ferramentas → Opções da Internet no menu
Selecione a guia Segurança na caixa de diálogo
Clique no botão Nível Personalizado
Role para baixo até encontrar a opção de script
Selecione o botão de opção Ativar em Scripts ativos
Finalmente clique em OK e saia
Para desabilitar o suporte a VBScript em seu Internet Explorer, você precisa selecionar o botão de rádio Desabilitar emActive scripting.
Posicionamento VBScript em arquivo HTML
É fornecida uma flexibilidade para incluir o código VBScript em qualquer lugar em um documento HTML. Mas a maneira mais preferida de incluir VBScript em seu arquivo HTML é a seguinte -
Script na seção <head> ... </head>.
Script na seção <body> ... </body>.
Script nas seções <body> ... </body> e <head> ... </head>.
Faça o script em um arquivo externo e inclua na seção <head> ... </head>.
Na seção a seguir, veremos como podemos colocar o VBScript de diferentes maneiras -
VBScript na seção <head> ... </head>
Se você quiser que um script seja executado em algum evento, como quando um usuário clica em algum lugar, você colocará esse script na cabeça da seguinte maneira -
<html>
<head>
<script type = "text/Vbscript">
<!--
Function sayHello()
Msgbox("Hello World")
End Function
//-->
</script>
</head>
<body>
<input type = "button" onclick = "sayHello()" value = "Say Hello" />
</body>
</html>
Ele produzirá o seguinte resultado - Um botão com o nome SayHello. Ao clicar no Botão, a caixa de mensagem é exibida ao usuário com a mensagem "Hello World".
VBScript na seção <body> ... </body>
Se você precisar que um script seja executado conforme a página carrega, para que gere conteúdo na página, o script vai na parte <body> do documento. Neste caso, você não teria nenhuma função definida usando VBScript -
<html>
<head> </head>
<body>
<script type = "text/vbscript">
<!--
document.write("Hello World")
//-->
</script>
<p>This is web page body </p>
</body>
</html>
Isso produzirá o seguinte resultado -
Hello World
This is web page body
VBScript nas seções <body> e <head>
Você pode colocar seu código VBScript na seção <head> e <body> da seguinte maneira -
<html>
<head>
<script type = "text/vbscript">
<!--
Function sayHello()
msgbox("Hello World")
End Function
//-->
</script>
</head>
<body>
<script type = "text/vbscript">
<!--
document.write("Hello World")
//-->
</script>
<input type = "button" onclick = "sayHello()" value = "Say Hello" />
</body>
</html>
Ele produzirá o seguinte resultado - mensagem Hello World com um botão 'Say Hello'. Ao clicar no botão, uma caixa de mensagem com a mensagem "Hello World" é exibida para o usuário.
Hello World
VBScript em arquivo externo
À medida que você começar a trabalhar mais extensivamente com o VBScript, provavelmente descobrirá que há casos em que está reutilizando o código VBScript idêntico em várias páginas de um site. Você não está restrito a manter um código idêntico em vários arquivos HTML.
A tag de script fornece um mecanismo que permite armazenar o VBScript em um arquivo externo e incluí-lo em seus arquivos HTML. Aqui está um exemplo para mostrar como você pode incluir um arquivo VBScript externo em seu código HTML usando a tag de script e seu atributo src -
<html>
<head>
<script type = "text/vbscript" src = "filename.vbs" ></script>
</head>
<body>
.......
</body>
</html>
Para usar o VBScript de uma fonte de arquivo externa, você precisa escrever todo o seu código-fonte VBScript em um arquivo de texto simples com extensão ".vbs" e incluir esse arquivo conforme mostrado acima. Por exemplo, você pode manter o seguinte conteúdo no arquivo filename.vbs e então usar a função sayHello em seu arquivo HTML após incluir o arquivo filename.vbs.
Function sayHello()
Msgbox "Hello World"
End Function
Posicionamento VBScript em QTP
O VBScript é colocado na ferramenta QTP (Quick Test Professional), mas NÃO está incluído nas tags HTML. O arquivo de script é salvo com a extensão .vbs e executado pelo mecanismo de execução Quick Test Professional.
Variáveis VBScript
Uma variável é um local de memória nomeado usado para conter um valor que pode ser alterado durante a execução do script. VBScript tem apenasONE tipo de dados fundamentais, Variant.
Rules for Declaring Variables −
O nome da variável deve começar com um alfabeto.
Os nomes das variáveis não podem exceder 255 caracteres.
As variáveis NÃO devem conter um ponto (.)
Os nomes de variáveis devem ser exclusivos no contexto declarado.
Declarando Variáveis
As variáveis são declaradas usando a palavra-chave “dim”. Como há apenas UM tipo de dados fundamental, todas as variáveis declaradas são variantes por padrão. Portanto, um usuárioNEED NOT mencionar o tipo de dados durante a declaração.
Example 1 - Neste exemplo, IntValue pode ser usado como String, Integer ou mesmo arrays.
Dim Var
Example 2 - Duas ou mais declarações são separadas por vírgula (,)
Dim Variable1,Variable2
Atribuição de valores às variáveis
Os valores são atribuídos de forma semelhante a uma expressão algébrica. O nome da variável no lado esquerdo seguido por um símbolo de igual a (=) e então seu valor no lado direito.
Regras
Os valores numéricos devem ser declarados sem aspas duplas.
Os valores de String devem ser colocados entre aspas duplas (")
Variáveis de data e hora devem ser colocadas entre o símbolo hash (#)
Exemplos
' Below Example, The value 25 is assigned to the variable.
Value1 = 25
' A String Value ‘VBScript’ is assigned to the variable StrValue.
StrValue = “VBScript”
' The date 01/01/2020 is assigned to the variable DToday.
Date1 = #01/01/2020#
' A Specific Time Stamp is assigned to a variable in the below example.
Time1 = #12:30:44 PM#
Escopo das Variáveis
As variáveis podem ser declaradas usando as seguintes instruções que determinam o escopo da variável. O escopo da variável desempenha um papel crucial quando usado dentro de um procedimento ou classes.
- Dim
- Public
- Private
Dim
Variáveis declaradas usando a palavra-chave “Dim” em um nível de procedimento estão disponíveis apenas dentro do mesmo procedimento. Variáveis declaradas usando a palavra-chave “Dim” no nível do script estão disponíveis para todos os procedimentos dentro do mesmo script.
Example - No exemplo abaixo, o valor de Var1 e Var2 são declarados no nível do script, enquanto Var3 é declarado no nível do procedimento.
Note- O escopo deste capítulo é entender Variáveis. As funções serão tratadas em detalhes nos próximos capítulos.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim Var1
Dim Var2
Call add()
Function add()
Var1 = 10
Var2 = 15
Dim Var3
Var3 = Var1 + Var2
Msgbox Var3 'Displays 25, the sum of two values.
End Function
Msgbox Var1 ' Displays 10 as Var1 is declared at Script level
Msgbox Var2 ' Displays 15 as Var2 is declared at Script level
Msgbox Var3 ' Var3 has No Scope outside the procedure. Prints Empty
</script>
</body>
</html>
Público
As variáveis declaradas usando a palavra-chave "Pública" estão disponíveis para todos os procedimentos em todos os scripts associados. Ao declarar uma variável do tipo "pública", a palavra-chave Dim é substituída por "Pública".
Example - No exemplo a seguir, Var1 e Var2 estão disponíveis no nível de script, enquanto Var3 está disponível nos scripts e procedimentos associados, pois é declarada como Pública.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim Var1
Dim Var2
Public Var3
Call add()
Function add()
Var1 = 10
Var2 = 15
Var3 = Var1+Var2
Msgbox Var3 'Displays 25, the sum of two values.
End Function
Msgbox Var1 ' Displays 10 as Var1 is declared at Script level
Msgbox Var2 ' Displays 15 as Var2 is declared at Script level
Msgbox Var3 ' Displays 25 as Var3 is declared as Public
</script>
</body>
</html>
Privado
As variáveis declaradas como "Privadas" têm escopo apenas dentro do script em que foram declaradas. Ao declarar uma variável do tipo "Privado", a palavra-chave Dim é substituída por "Privado".
Example- No exemplo a seguir, Var1 e Var2 estão disponíveis no nível de script. Var3 é declarado como Privado e está disponível apenas para este script específico. O uso de Variáveis "Privadas" é mais pronunciado dentro da Classe.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim Var1
Dim Var2
Private Var3
Call add()
Function add()
Var1 = 10
Var2 = 15
Var3 = Var1+Var2
Msgbox Var3 'Displays the sum of two values.
End Function
Msgbox Var1 ' Displays 10 as Var1 is declared at Script level
Msgbox Var2 ' Displays 15 as Var2 is declared at Script level
Msgbox Var3 ' Displays 25 but Var3 is available only for this script.
</script>
</body>
</html>
Constante é um local de memória nomeado usado para conter um valor que NÃO PODE ser alterado durante a execução do script. Se um usuário tentar alterar um Valor Constante, a execução do Script terminará com um erro. As constantes são declaradas da mesma maneira que as variáveis são declaradas.
Declarando Constantes
Sintaxe
[Public | Private] Const Constant_Name = Value
A constante pode ser do tipo Público ou Privado. O uso de público ou privado é opcional. As constantes públicas estão disponíveis para todos os scripts e procedimentos, enquanto as constantes privadas estão disponíveis dentro do procedimento ou classe. Pode-se atribuir qualquer valor, como número, String ou Data à Constante declarada.
Exemplo 1
Neste exemplo, o valor de pi é 3,4 e exibe a área do círculo em uma caixa de mensagem.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim intRadius
intRadius = 20
const pi = 3.14
Area = pi*intRadius*intRadius
Msgbox Area
</script>
</body>
</html>
Exemplo 2
O exemplo a seguir ilustra como atribuir uma string e um valor de data a uma constante.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Const myString = "VBScript"
Const myDate = #01/01/2050#
Msgbox myString
Msgbox myDate
</script>
</body>
</html>
Exemplo 3
No exemplo abaixo, o usuário tenta alterar o valor constante; portanto, vai acabar com umExecution Error.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim intRadius
intRadius = 20
const pi = 3.14
pi = pi*pi 'pi VALUE CANNOT BE CHANGED.THROWS ERROR'
Area = pi*intRadius*intRadius
Msgbox Area
</script>
</body>
</html>
O que é uma operadora?
Vamos considerar uma expressão 4 + 5 é igual a 9 . Aqui, 4 e 5 são chamadosoperands e + é chamado de operator. A linguagem VBScript suporta os seguintes tipos de operadores -
- Operadores aritméticos
- Operadores de comparação
- Operadores lógicos (ou relacionais)
- Operadores de concatenação
Os operadores aritméticos
VBScript suporta os seguintes operadores aritméticos -
Suponha que a variável A tenha 5 e a variável B tenha 10, então -
Mostrar exemplos
Operador | Descrição | Exemplo |
---|---|---|
+ | Adiciona dois operandos | A + B dará 15 |
- | Subtrai o segundo operando do primeiro | A - B dará -5 |
* | Multiplique os dois operandos | A * B dará 50 |
/ | Divida numerador por denumerador | B / A dará 2 |
% | Operador de Módulo e o restante após uma divisão inteira | B MOD A dará 0 |
^ | Operador de exponenciação | B ^ A dará 100.000 |
Para entender esses operadores de uma maneira melhor, você pode fazer uma experiência .
Os operadores de comparação
Existem os seguintes operadores de comparação suportados pela linguagem VBScript -
Suponha que a variável A tenha 10 e a variável B tenha 20, então -
Mostrar exemplos
Operador | Descrição | Exemplo |
---|---|---|
= | Verifica se os valores de dois operandos são iguais ou não, se sim a condição torna-se verdadeira. | (A == B) é False. |
<> | Verifica se o valor de dois operandos são iguais ou não; se os valores não são iguais, a condição se torna verdadeira. | (A <> B) é verdadeiro. |
> | Verifica se o valor do operando esquerdo é maior que o valor do operando direito, se sim então a condição torna-se verdadeira. | (A> B) é False. |
< | Verifica se o valor do operando esquerdo é menor que o valor do operando direito; se sim, a condição torna-se verdadeira. | (A <B) é verdadeiro. |
> = | Verifica se o valor do operando esquerdo é maior ou igual ao valor do operando direito, se sim a condição torna-se verdadeira. | (A> = B) é falso. |
<= | Verifica se o valor do operando esquerdo é menor ou igual ao valor do operando direito; em caso afirmativo, a condição torna-se verdadeira. | (A <= B) é verdadeiro. |
Para entender esses operadores de uma maneira melhor, você pode fazer uma experiência .
Os operadores lógicos
Existem seguintes operadores lógicos suportados pela linguagem VBScript -
Suponha que a variável A tenha 10 e a variável B tenha 0, então -
Mostrar exemplos
Operador | Descrição | Exemplo |
---|---|---|
E | Operador lógico chamado AND. Se ambas as condições forem Verdadeiras, Expressão se tornará Verdadeira. | a <> 0 AND b <> 0 é falso. |
OU | Operador lógico ou chamado. Se qualquer uma das duas condições for True, então a condição se torna True. | a <> 0 OU b <> 0 é verdadeiro. |
NÃO | Operador lógico chamado NOT. Ele inverte o estado lógico de seu operando. Se uma condição for verdadeira, o operador lógico NOT a tornará falsa. | NÃO (a <> 0 OU b <> 0) é falso. |
XOR | Exclusão lógica chamada. É a combinação de NOT e OR Operator. Se uma, e apenas uma, das expressões for avaliada como True, o resultado será True. | (a <> 0 XOR b <> 0) é verdadeiro. |
Para entender esses operadores de uma maneira melhor, você pode fazer uma experiência .
Os operadores de concatenação
Existem os seguintes operadores de Concatenação suportados pela linguagem VBScript -
Suponha que a variável A tenha 5 e a variável B tenha 10, então -
Mostrar exemplos
Operador | Descrição | Exemplo |
---|---|---|
+ | Adiciona dois valores, pois os valores das variáveis são numéricos | A + B dará 15 |
E | Concatena dois valores | A & B dará 510 |
Suponha que a variável A = "Microsoft" e a variável B = "VBScript", então -
Operador | Descrição | Exemplo |
---|---|---|
+ | Concatena dois valores | A + B dará MicrosoftVBScript |
E | Concatena dois valores | A & B fornecerá MicrosoftVBScript |
Note- Operadores de concatenação podem ser usados para números e strings. A saída depende do contexto se as variáveis contêm um valor numérico ou valor de string.
Para entender esses operadores de uma maneira melhor, você pode fazer uma experiência .
A tomada de decisão permite que os programadores controlem o fluxo de execução de um script ou de uma de suas seções. A execução é governada por uma ou mais declarações condicionais.
A seguir está a forma geral de uma estrutura típica de tomada de decisão encontrada na maioria das linguagens de programação -
O VBScript fornece os seguintes tipos de declarações de tomada de decisão.
Declaração | Descrição |
---|---|
declaração if | A if declaração consiste em uma expressão booleana seguida por uma ou mais declarações. |
if..else statement | A if elsedeclaração consiste em uma expressão booleana seguida por uma ou mais declarações. Se a condição for verdadeira, as declarações sob oIfdeclarações são executadas. Se a condição for falsa, então oElse parte do script é executado |
if ... elseif..else declaração | A if declaração seguida por um ou mais ElseIf Instruções, que consistem em expressões booleanas seguidas por uma instrução else opcional, que é executada quando todas as condições se tornam falsas. |
declarações if aninhadas | A if ou elseif declaração dentro de outra if ou elseif afirmações). |
declaração switch | UMA switch instrução permite que uma variável seja testada quanto à igualdade em relação a uma lista de valores. |
Pode haver uma situação em que você precise executar um bloco de código várias vezes. Em geral, as instruções são executadas sequencialmente: a primeira instrução em uma função é executada primeiro, seguida pela segunda e assim por diante.
As linguagens de programação fornecem várias estruturas de controle que permitem caminhos de execução mais complicados. Uma instrução de loop nos permite executar uma instrução ou grupo de instruções várias vezes e a seguir está o from geral de uma instrução de loop em VBScript.
O VBScript fornece os seguintes tipos de loops para lidar com os requisitos de loop. Clique nos links a seguir para verificar seus detalhes.
Tipo de Loop | Descrição |
---|---|
para loop | Executa uma sequência de instruções várias vezes e abrevia o código que gerencia a variável de loop. |
para ..cada loop | Ele é executado se houver pelo menos um elemento no grupo e reiterado para cada elemento em um grupo. |
while..wend loop | Ele testa a condição antes de executar o corpo do loop. |
fazer .. while loops | As instruções do..While serão executadas desde que a condição seja Verdadeira. (Ou seja,) O Loop deve ser repetido até que a condição seja False. |
do..até loops | As instruções do..Until serão executadas enquanto a condição for False. (Ou seja,) O Loop deve ser repetido até que a condição seja True. |
Declarações de controle de loop
As instruções de controle de loop alteram a execução de sua sequência normal. Quando a execução deixa um escopo, todas as instruções restantes no loop NÃO são executadas.
O VBScript oferece suporte às seguintes instruções de controle. Clique nos links a seguir para verificar seus detalhes.
Declaração de Controle | Descrição |
---|---|
Declaração de saída para | Termina o For loop instrução e transfere a execução para a instrução imediatamente após o loop |
Declaração de saída Do | Termina o Do While instrução e transfere a execução para a instrução imediatamente após o loop |
O que é um evento?
A interação do VBScript com o HTML é tratada por meio de eventos que ocorrem quando o usuário ou navegador manipula uma página. Quando a página é carregada, é um evento. Quando o usuário clica em um botão, esse clique também é um evento. Outros exemplos de eventos incluem pressionar qualquer tecla, fechar janela, redimensionar janela, etc. Os desenvolvedores podem usar esses eventos para executar respostas codificadas em VBScript, o que faz com que botões fechem janelas, mensagens sejam exibidas para usuários, dados a serem validados e virtualmente qualquer outro tipo de resposta que se possa imaginar.
Os eventos fazem parte do Document Object Model (DOM) e cada elemento HTML tem um determinado conjunto de eventos, que podem acionar o código VBScript. Siga este pequeno tutorial para entender melhor a Referência de eventos HTML . Aqui, veremos alguns exemplos para entender a relação entre Event e VBScript.
Tipo de evento onclick
Este é o tipo de evento usado com mais frequência, que ocorre quando um usuário clica com o botão esquerdo do mouse. Você pode colocar sua validação, aviso, etc., contra este tipo de evento.
Exemplo
<html>
<head>
<script language = "vbscript" type = "text/vbscript">
Function sayHello()
msgbox "Hello World"
End Function
</script>
</head>
<body>
<input type = "button" onclick = "sayHello()" value = "Say Hello"/>
</body>
</html>
Ele produzirá o seguinte resultado e, quando você clicar no botão Hello, o evento onclick ocorrerá, o que irá acionar a função sayHello ().
onsubmit tipo de evento
Outro tipo de evento mais importante é onsubmit . Este evento ocorre quando você tenta enviar um formulário. Portanto, você pode colocar a validação do seu formulário contra este tipo de evento. O formulário é enviado clicando no botão Enviar, a caixa de mensagem é exibida.
O formulário é enviado clicando no botão Enviar, a caixa de mensagem é exibida.
Exemplo
<html>
<head> </head>
<body>
<script language = "VBScript">
Function fnSubmit()
Msgbox("Hello Tutorialspoint.Com")
End Function
</script>
<form action = "/cgi-bin/test.cgi" method = "post" name = "form1" onSubmit = "fnSubmit()">
<input name = "txt1" type = "text"><br>
<input name = "btnButton1" type = "submit" value="Submit">
</form>
</body>
</html>
onmouseover e onmouseout
Esses dois tipos de eventos o ajudarão a criar bons efeitos com imagens ou até mesmo com texto. O evento onmouseover ocorre quando você passa o mouse sobre qualquer elemento e o onmouseout ocorre quando você tira o mouse desse elemento.
Exemplo
<html>
<head> </head>
<body>
<script language = "VBScript">
Function AlertMsg
Msgbox("ALERT !")
End Function
Function onmourse_over()
Msgbox("Onmouse Over")
End Function
Sub txt2_OnMouseOut()
Msgbox("Onmouse Out !!!")
End Sub
Sub btnButton_OnMouseOut()
Msgbox("onmouse out on Button !")
End Sub
</script>
<form action = "page.cgi" method = "post" name = "form1">
<input name = "txt1" type = "text" OnMouseOut = "AlertMsg()"><br>
<input name = "txt2" type = "text" OnMouseOver = "onmourse_over()">
<br><input name = "btnButton" type = "button" value = "Submit">
</form>
</body>
</html>
Isso produzirá um resultado quando você passar o mouse sobre a caixa de texto e também quando você mover o foco para longe da caixa de texto e do botão.
Eventos padrão HTML 4
Os eventos HTML 4 padrão estão listados aqui para sua referência. Aqui, o script indica uma função VBScript a ser executada naquele evento.
Evento | Valor | Descrição |
---|---|---|
em mudança | roteiro | O script é executado quando o elemento muda |
onsubmit | roteiro | O script é executado quando o formulário é enviado |
onreset | roteiro | O script é executado quando o formulário é reiniciado |
onblur | roteiro | O script é executado quando o elemento perde o foco |
No foco | roteiro | O script é executado quando o elemento obtém o foco |
onkeydown | roteiro | O script é executado quando a tecla é pressionada |
onkeypress | roteiro | O script é executado quando a tecla é pressionada e liberada |
onkeyup | roteiro | O script é executado quando a tecla é liberada |
onclick | roteiro | O script é executado quando um clique do mouse |
ondblclick | roteiro | O script é executado quando um clique duplo do mouse |
onmousedown | roteiro | O script é executado quando o botão do mouse é pressionado |
onmousemove | roteiro | O script é executado quando o ponteiro do mouse se move |
onmouseout | roteiro | O script é executado quando o ponteiro do mouse sai de um elemento |
onmouseover | roteiro | O script é executado quando o ponteiro do mouse se move sobre um elemento |
onmouseup | roteiro | O script é executado quando o botão do mouse é liberado |
O que são cookies?
Os navegadores e servidores da Web usam o protocolo HTTP para se comunicar e o HTTP é um protocolo sem estado. Mas para um site comercial, é necessário manter as informações da sessão entre as diferentes páginas. Por exemplo, o registro de um usuário termina após completar muitas páginas. Mas como manter as informações da sessão do usuário em todas as páginas da web. Em muitas situações, o uso de cookies é o método mais eficiente de lembrar e rastrear preferências, compras, comissões e outras informações necessárias para uma melhor experiência do visitante ou estatísticas do site.
Como funciona?
Seu servidor envia alguns dados para o navegador do visitante na forma de um cookie. O navegador pode aceitar o cookie. Em caso afirmativo, ele é armazenado como um registro de texto simples no disco rígido do visitante. Agora, quando o visitante chega a outra página do seu site, o navegador envia o mesmo cookie para o servidor para recuperação. Uma vez recuperado, seu servidor sabe / lembra o que foi armazenado anteriormente. Cookies são um registro de dados de texto simples de 5 campos de comprimento variável -
Expires- A data em que o cookie irá expirar. Se estiver em branco, o cookie irá expirar quando o visitante sair do navegador.
Domain - O nome de domínio do seu site.
Path- O caminho para o diretório ou página da web que definiu o cookie. Isso pode ficar em branco se você quiser recuperar o cookie de qualquer diretório ou página.
Secure- Se este campo contiver a palavra "seguro", o cookie só poderá ser recuperado com um servidor seguro. Se este campo estiver em branco, não existe tal restrição.
Name=Value - Os cookies são definidos e recuperados na forma de pares de chave e valor.
Os cookies foram originalmente projetados para a programação CGI e os dados dos cookies são transmitidos automaticamente entre o navegador da web e o servidor da web, de forma que os scripts CGI no servidor podem ler e gravar valores de cookies armazenados no cliente.
O VBScript também pode manipular cookies usando a propriedade cookie do objeto Document . O VBScript pode ler, criar, modificar e excluir o cookie ou cookies que se aplicam à página da web atual.
Armazenando Cookies
A maneira mais simples de criar um cookie é atribuir um valor de string ao objeto document.cookie , que se parece com isto -
Sintaxe
document.cookie = "key1 = value1;key2 = value2;expires = date"
Aqui, o atributo expires é opcional. Se você fornecer a este atributo uma data ou hora válida, o cookie irá expirar na data ou hora fornecida e, depois disso, o valor dos cookies não estará acessível.
Exemplo
A seguir está o exemplo para definir um nome de cliente no cookie de entrada .
<html>
<head>
<script type = "text/vbscript">
Function WriteCookie
If document.myform.customer.value = "" Then
msgbox "Enter some value!"
Else
cookievalue = (document.myform.customer.value)
document.cookie = "name = " + cookievalue
msgbox "Setting Cookies : " & "name = " & cookievalue
End If
End Function
</script>
</head>
<body>
<form name = "myform" action = "">
Enter name: <input type = "text" name = "customer"/>
<input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
</form>
</body>
</html>
Isso produzirá o seguinte resultado. Agora insira algo na caixa de texto e pressione o botão "Definir Cookie" para definir os cookies.
Agora, seu sistema possui um cookie chamado name . Você pode definir vários cookies usando vários pares de chave = valor separados por vírgula. Você aprenderá a ler esse cookie na próxima seção.
Lendo Cookies
Ler um cookie é tão simples quanto escrever um, porque o valor do objeto document.cookie é o cookie. Portanto, você pode usar essa string sempre que quiser acessar o cookie. A string document.cookie manterá uma lista de pares nome = valor separados por ponto-e-vírgula, onde name é o nome de um cookie e value é o valor da string. Você pode usar a função split () de strings para quebrar a string em chave e valores da seguinte maneira -
Exemplo
A seguir está o exemplo para obter os cookies definidos na seção anterior -
<html>
<head>
<script type = "text/vbscript">
Function ReadCookie
allcookies = document.cookie
msgbox "All Cookies : " + allcookies
cookiearray = split(allcookies,";")
For i = 0 to ubound(cookiearray)
Name = Split(cookiearray(i),"=")
Msgbox "Key is : " + Name(0) + " and Value is : " + Name(1)
Next
End Function
</script>
</head>
<body>
<form name = "myform" action = "">
<input type = "button" value = "Get Cookie" onclick = "ReadCookie()"/>
</form>
</body>
</html>
Note- Aqui, UBound é um método da classe Array , que retorna o comprimento de uma matriz. Discutiremos os Arrays em um capítulo separado; até esse momento, por favor, tente digeri-lo.
Isso produzirá o seguinte resultado. Agora, pressione o botão "Obter Cookie" para ver os cookies, que você configurou na seção anterior.
Note- Pode haver alguns outros cookies já configurados em sua máquina. Portanto, o código acima irá mostrar-lhe todos os cookies definidos em sua máquina.
Definir a data de validade dos cookies
Você pode estender a vida de um cookie além da sessão atual do navegador, definindo uma data de validade e salvando a data de validade dentro do cookie. Isso pode ser feito definindo o atributo expires para uma data e hora.
Exemplo
O exemplo a seguir ilustra como definir a data de expiração do cookie após 1 mês -
<html>
<head>
<script type = "text/vbscript">
Function WriteCookie()
x = now()
y = dateadd("m",1,now()) ' Making it to expire next
cookievalue = document.myform.customer.value
document.cookie = "name = " & cookievalue
document.cookie = "expires = " & y
msgbox("Setting Cookies : " & "name=" & cookievalue )
End Function
</script>
</head>
<body>
<form name = "myform" action = "">
Enter name: <input type = "text" name = "customer"/>
<input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
</form>
</body>
</html>
Excluindo um Cookie
Às vezes, você desejará excluir um cookie para que as tentativas subsequentes de ler o cookie não retornem nada. Para fazer isso, você só precisa definir a data de validade para uma hora no passado.
Exemplo
O exemplo a seguir ilustra como excluir um cookie definindo sua data de validade 1 mês no passado -
<html>
<head>
<script type = "text/vbscript">
Function WriteCookie()
x = now()
x = now()
a = Month(x)-1
b = day(x)
c = year(x)
d = DateSerial(c,a,b)
e = hour(x)
msgbox e
f = minute(x)
msgbox f
d = cdate(d & " " & e & ":" & f)
msgbox d
cookievalue = document.myform.customer.value
document.cookie = "name = " & cookievalue
document.cookie = "expires = " & d
msgbox("Setting Cookies : " & "name=" & cookievalue )
End Function
</script>
</head>
<body>
<form name = "myform" action = "">
Enter name: <input type = "text" name = "customer"/>
<input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
</form>
</body>
</html>
As funções de número ajudam os desenvolvedores a lidar com números de maneira eficiente e também os ajudam a converter seus subtipos. Também os ajuda a fazer uso das funções matemáticas inerentes ao VBScript.
Funções de conversão de números
As funções de número nos ajudam a converter um determinado número de um subtipo de dados para outro subtipo de dados.
Mostrar exemplos
Sr. Não | Descrição da função |
---|---|
1 | CDbl Uma função, que converte um determinado número de qualquer subtipo variante em duplo |
2 | CInt Uma função, que converte um determinado número de qualquer subtipo variante em inteiro |
3 | CLng Uma Função, que converte um determinado número de qualquer subtipo variante em Longo |
4 | CSng Uma função, que converte um determinado número de qualquer subtipo de variante em único |
5 | Hex Uma função, que converte um determinado número de qualquer subtipo variante em hexadecimal |
Funções de formatação de números
As funções de formatação de número ajudam os desenvolvedores a expressar o número fornecido em um formato que desejem.
Mostrar exemplos
Sr. Não | Descrição da função |
---|---|
1 | FormatNumber Uma função, que retornaria uma expressão formatada como um número |
2 | FormatPercent Uma função, que retornaria uma expressão formatada como uma porcentagem |
Funções Matemáticas
Funções matemáticas nos ajudam a avaliar as funções matemáticas e trigonométricas de um determinado número de entrada.
Mostrar exemplos
Sr. Não | Descrição da função |
---|---|
1 | Int Uma função, que retorna a parte inteira do número fornecido |
2 | Fix Uma função, que retorna a parte inteira do número fornecido |
3 | Log Uma função, que retorna o logaritmo natural do número fornecido. Números negativos não permitidos |
4 | Oct Uma função, que retorna o valor octal de uma determinada porcentagem |
5 | Hex Uma função, que retorna o valor hexadecimal do número fornecido |
6 | Rnd Uma função, que retorna um número aleatório entre 0 e 1 |
7 | Sgn Uma função, que retorna um número correspondente ao sinal do número especificado |
8 | Sqr Uma função, que retorna a raiz quadrada do número fornecido. Números negativos não permitidos |
9 | Abs Uma função, que retorna o valor absoluto do número fornecido |
10 | Exp A Function, que retorna o valor de e elevado ao número especificado |
11 | Sin Uma função, que retorna o valor seno do número fornecido |
12 | Cos Uma função, que retorna o valor do cosseno do número fornecido |
13 | Tan Uma função, que retorna o valor tan do número fornecido |
Strings são uma sequência de caracteres, que podem consistir em alfabetos ou números ou caracteres especiais ou todos eles. Uma variável é considerada uma string se estiver entre aspas duplas "".
Sintaxe
variablename = "string"
Exemplos
str1 = "string" ' Only Alphabets
str2 = "132.45" ' Only Numbers
str3 = "!@#$;*" ' Only Special Characters
Str4 = "Asc23@#" ' Has all the above
Funções de String
Existem funções VBScript String predefinidas, que ajudam os desenvolvedores a trabalhar com as strings de maneira muito eficaz. Abaixo estão os métodos String que são suportados no VBScript. Clique em cada um dos métodos para saber mais detalhadamente.
Nome da Função | Descrição |
---|---|
InStr | Retorna a primeira ocorrência da substring especificada. A pesquisa acontece da esquerda para a direita. |
InstrRev | Retorna a primeira ocorrência da substring especificada. A pesquisa acontece da direita para a esquerda. |
Lcase | Retorna o minúsculo da string especificada. |
Ucase | Retorna as letras maiúsculas da string especificada. |
Esquerda | Retorna um número específico de caracteres do lado esquerdo da string. |
Direito | Retorna um número específico de caracteres do lado direito da string. |
Mid | Retorna um número específico de caracteres de uma string com base nos parâmetros especificados. |
Ltrim | Retorna uma string após remover os espaços do lado esquerdo da string especificada. |
Rtrim | Retorna uma string após remover os espaços do lado direito da string especificada. |
aparar | Retorna um valor de string após remover os espaços em branco à esquerda e à direita. |
Len | Retorna o comprimento da string fornecida. |
Substituir | Retorna uma string após substituir uma string por outra string. |
Espaço | Preenche uma string com o número especificado de espaços. |
StrComp | Retorna um valor inteiro após comparar as duas strings especificadas. |
Corda | Retorna uma String com um caractere especificado o número especificado de vezes. |
StrReverse | Retorna uma String após reverter a sequência dos caracteres da string fornecida. |
O que é uma matriz?
Sabemos muito bem que uma variável é um contêiner para armazenar um valor. Às vezes, os desenvolvedores podem manter mais de um valor em uma única variável por vez. Quando uma série de valores é armazenada em uma única variável, ela é conhecida comoarray variable.
Declaração de Array
Os arrays são declarados da mesma maneira que uma variável foi declarada, exceto que a declaração de uma variável de array usa parênteses. No exemplo a seguir, o tamanho da matriz é mencionado entre colchetes.
'Method 1 : Using Dim
Dim arr1() 'Without Size
'Method 2 : Mentioning the Size
Dim arr2(5) 'Declared with size of 5
'Method 3 : using 'Array' Parameter
Dim arr3
arr3 = Array("apple","Orange","Grapes")
Embora o tamanho do array seja indicado como 5, ele pode conter 6 valores já que o índice do array começa em ZERO.
O índice da matriz não pode ser negativo.
Os Arrays VBScript podem armazenar qualquer tipo de variável em um array. Conseqüentemente, um array pode armazenar um inteiro, string ou caracteres em uma única variável de array.
Atribuição de valores a uma matriz
Os valores são atribuídos ao array especificando o valor do índice do array em relação a cada um dos valores a serem atribuídos. Pode ser uma string.
Exemplo
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim arr(5)
arr(0) = "1" 'Number as String
arr(1) = "VBScript" 'String
arr(2) = 100 'Number
arr(3) = 2.45 'Decimal Number
arr(4) = #10/07/2013# 'Date
arr(5) = #12.45 PM# 'Time
document.write("Value stored in Array index 0 : " & arr(0) & "<br />")
document.write("Value stored in Array index 1 : " & arr(1) & "<br />")
document.write("Value stored in Array index 2 : " & arr(2) & "<br />")
document.write("Value stored in Array index 3 : " & arr(3) & "<br />")
document.write("Value stored in Array index 4 : " & arr(4) & "<br />")
document.write("Value stored in Array index 5 : " & arr(5) & "<br />")
</script>
</body>
</html>
Quando o código acima é salvo como .HTML e executado no Internet Explorer, ele produz o seguinte resultado -
Value stored in Array index 0 : 1
Value stored in Array index 1 : VBScript
Value stored in Array index 2 : 100
Value stored in Array index 3 : 2.45
Value stored in Array index 4 : 7/10/2013
Value stored in Array index 5 : 12:45:00 PM
Matrizes multidimensionais
Os arrays não se limitam apenas a uma dimensão e podem ter no máximo 60 dimensões. Matrizes bidimensionais são as mais comumente usadas.
Exemplo
No exemplo a seguir, uma matriz multidimensional é declarada com 3 linhas e 4 colunas.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim arr(2,3) ' Which has 3 rows and 4 columns
arr(0,0) = "Apple"
arr(0,1) = "Orange"
arr(0,2) = "Grapes"
arr(0,3) = "pineapple"
arr(1,0) = "cucumber"
arr(1,1) = "beans"
arr(1,2) = "carrot"
arr(1,3) = "tomato"
arr(2,0) = "potato"
arr(2,1) = "sandwitch"
arr(2,2) = "coffee"
arr(2,3) = "nuts"
document.write("Value in Array index 0,1 : " & arr(0,1) & "<br />")
document.write("Value in Array index 2,2 : " & arr(2,2) & "<br />")
</script>
</body>
</html>
Quando o código acima é salvo como .HTML e executado no Internet Explorer, ele produz o seguinte resultado -
Value stored in Array index : 0 , 1 : Orange
Value stored in Array index : 2 , 2 : coffee
Declaração de redim
A instrução ReDim é usada para declarar variáveis de matriz dinâmica e alocar ou realocar espaço de armazenamento.
ReDim [Preserve] varname(subscripts) [, varname(subscripts)]
Preserve - Um parâmetro opcional usado para preservar os dados em uma matriz existente quando você altera o tamanho da última dimensão.
varname - Um parâmetro obrigatório, que denota o nome da variável, que deve seguir as convenções de nomenclatura de variável padrão.
subscripts - Um parâmetro obrigatório, que indica o tamanho da matriz.
Exemplo
No exemplo a seguir, uma matriz foi redefinida e, em seguida, preservou os valores quando o tamanho existente da matriz foi alterado.
Note - Ao redimensionar um array menor que o original, os dados dos elementos eliminados serão perdidos.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Dim a()
i = 0
redim a(5)
a(0) = "XYZ"
a(1) = 41.25
a(2) = 22
REDIM PRESERVE a(7)
For i = 3 to 7
a(i) = i
Next
'to Fetch the output
For i = 0 to ubound(a)
Msgbox a(i)
Next
</script>
</body>
</html>
Quando salvamos o script acima como HTML e o executamos no Internet Explorer, ele produz o seguinte resultado.
XYZ
41.25
22
3
4
5
6
7
Métodos Array
Existem várias funções embutidas no VBScript que ajudam os desenvolvedores a lidar com matrizes de forma eficaz. Todos os métodos usados em conjunto com arrays estão listados abaixo. Clique no nome do método para saber mais detalhes.
Função | Descrição |
---|---|
LBound | Uma Função, que retorna um inteiro que corresponde ao menor subscrito das matrizes fornecidas. |
UBound | Uma função, que retorna um inteiro que corresponde ao maior subscrito dos arrays fornecidos. |
Dividido | Uma Function, que retorna uma matriz que contém um número especificado de valores. Dividido com base em um delimitador. |
Junte-se | Uma Function, que retorna uma String que contém um número especificado de substrings em uma matriz. Esta é uma função exatamente oposta ao Método de divisão. |
Filtro | Uma Função, que retorna uma matriz baseada em zero que contém um subconjunto de uma matriz de string com base em um critério de filtro específico. |
IsArray | Uma Função, que retorna um valor booleano que indica se a variável de entrada é ou não uma matriz. |
Apagar | Uma função, que recupera a memória alocada para as variáveis do array. |
As funções de data e hora do VBScript ajudam os desenvolvedores a converter a data e a hora de um formato para outro ou a expressar o valor de data ou hora no formato adequado a uma condição específica.
Funções de data
Função | Descrição |
---|---|
Encontro | Uma função, que retorna a data atual do sistema |
CDate | Uma função, que converte uma determinada entrada em data |
DateAdd | Uma função, que retorna uma data à qual um intervalo de tempo especificado foi adicionado |
DateDiff | Uma função, que retorna a diferença entre dois períodos de tempo |
DatePart | Uma função, que retorna uma parte especificada do valor de data de entrada fornecido |
DateSerial | Uma função, que retorna uma data válida para o ano, mês e data fornecidos |
FormatDateTime | Uma função, que formata a data com base nos parâmetros fornecidos |
IsDate | Uma função, que retorna um valor booleano, independentemente de o parâmetro fornecido ser uma data |
Dia | Uma função, que retorna um número inteiro entre 1 e 31 que representa o dia da data especificada |
Mês | Uma função, que retorna um número inteiro entre 1 e 12 que representa o mês da data especificada |
Ano | Uma função, que retorna um número inteiro que representa o ano da data especificada |
MonthName | Uma função, que retorna o nome do mês específico para a data especificada |
WeekDay | Uma função, que retorna um número inteiro (1 a 7) que representa o dia da semana para o dia especificado. |
WeekDayName | Uma função, que retorna o nome do dia da semana para o dia especificado. |
Funções de tempo
Função | Descrição |
---|---|
Agora | Uma função, que retorna a data e hora atuais do sistema |
Hora | Uma função, que retorna um número inteiro entre 0 e 23 que representa a parte da hora do tempo determinado |
Minuto | Uma função, que retorna um número inteiro entre 0 e 59 que representa a parte dos minutos do tempo determinado |
Segundo | Uma função, que retorna um número inteiro entre 0 e 59 que representa a parte dos segundos do tempo determinado |
Tempo | Uma função, que retorna a hora atual do sistema |
Cronômetro | Uma função, que retorna o número de segundos e milissegundos desde 0h |
TimeSerial | Uma função, que retorna a hora para a entrada específica de hora, minuto e segundo |
Valor do tempo | Uma função, que converte a string de entrada em um formato de hora |
O que é uma função?
Uma função é um grupo de código reutilizável que pode ser chamado em qualquer lugar em seu programa. Isso elimina a necessidade de escrever o mesmo código repetidamente. Isso permitirá que os programadores dividam um grande programa em várias funções pequenas e gerenciáveis. Além das funções embutidas, o VBScript também nos permite escrever funções definidas pelo usuário. Esta seção explicará como escrever suas próprias funções em VBScript.
Definição de Função
Antes de usarmos uma função, precisamos definir essa função particular. A maneira mais comum de definir uma função em VBScript é usando a palavra-chave Function, seguida por um nome de função exclusivo e pode ou não conter uma lista de parâmetros e uma instrução com umEnd Function palavra-chave, que indica o fim da função.
A sintaxe básica é mostrada abaixo -
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Function Functionname(parameter-list)
statement 1
statement 2
statement 3
.......
statement n
End Function
</script>
</body>
</html>
Exemplo
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Function sayHello()
msgbox("Hello there")
End Function
</script>
</body>
</html>
Chamando uma função
Para invocar uma função em algum lugar posteriormente no script, você simplesmente precisa escrever o nome dessa função com o Call palavra-chave.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Function sayHello()
msgbox("Hello there")
End Function
Call sayHello()
</script>
</body>
</html>
Parâmetros de Função
Até agora, vimos a função sem um parâmetro, mas há uma facilidade para passar parâmetros diferentes ao chamar uma função. Esses parâmetros passados podem ser capturados dentro da função e qualquer manipulação pode ser feita sobre esses parâmetros. As funções são chamadas usando oCall Palavra-chave.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Function sayHello(name, age)
msgbox( name & " is " & age & " years old.")
End Function
Call sayHello("Tutorials point", 7)
</script>
</body>
</html>
Retornando um valor de uma função
Uma função VBScript pode ter uma instrução de retorno opcional. Isso é necessário se você deseja retornar um valor de uma função. Por exemplo, você pode passar dois números em uma função e então esperar que a função retorne sua multiplicação no programa de chamada.
NOTE - Uma função pode retornar vários valores separados por vírgula como uma matriz atribuída ao próprio nome da função.
Exemplo
Esta função pega dois parâmetros, concatena-os e retorna o resultado no programa de chamada. No VBScript, os valores são retornados de uma função usando o nome da função. No caso de você desejar retornar dois ou mais valores, o nome da função é retornado com uma matriz de valores. No programa de chamada, o resultado é armazenado na variável de resultado.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Function concatenate(first, last)
Dim full
full = first & last
concatenate = full 'Returning the result to the function name itself
End Function
</script>
</body>
</html>
Agora, podemos chamar essa função da seguinte maneira -
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Function concatenate(first, last)
Dim full
full = first & last
concatenate = full 'Returning the result to the function name itself
End Function
' Here is the usage of returning value from function.
dim result
result = concatenate("Zara", "Ali")
msgbox(result)
</script>
</body>
</html>
Subprocedimentos
Subprocedimentos são semelhantes a funções, mas existem algumas diferenças.
Subprocedimentos DONOT Retorna um valor enquanto as funções podem ou não retornar um valor.
Subprocedimentos podem ser chamados sem a palavra-chave call.
Os subprocedimentos estão sempre incluídos Sub e End Sub afirmações.
Exemplo
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Sub sayHello()
msgbox("Hello there")
End Sub
</script>
</body>
</html>
Procedimentos de Chamada
Para invocar um procedimento em algum lugar posteriormente no script, você simplesmente precisa escrever o nome desse procedimento com ou sem o Call palavra-chave.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Sub sayHello()
msgbox("Hello there")
End Sub
sayHello()
</script>
</body>
</html>
Conceitos avançados para funções
Há muito o que aprender sobre as funções do VBScript. Podemos passar o parâmetro por valor ou por referência. Clique em cada um deles para saber mais.
ByVal- passa os parâmetros por valor
ByRef- Passe os parâmetros pela referência
O que é uma caixa de diálogo?
O VBScript permite que os desenvolvedores interajam com o usuário de maneira eficaz. Pode ser uma caixa de mensagem para exibir uma mensagem a um usuário ou uma caixa de entrada com a qual o usuário pode inserir os valores.
Função VBScript MsgBox
A função MsgBox exibe uma caixa de mensagem e espera que o usuário clique em um botão e, em seguida, uma ação é executada com base no botão clicado pelo usuário.
Sintaxe
MsgBox(prompt[,buttons][,title][,helpfile,context])
Descrição do Parâmetro
Prompt- Um parâmetro obrigatório. Um String que é exibido como uma mensagem na caixa de diálogo. O comprimento máximo do prompt é de aproximadamente 1.024 caracteres. Se a mensagem se estender por mais de uma linha, podemos separar as linhas usando um caractere de retorno de carro (Chr (13)) ou um caractere de alimentação de linha (Chr (10)) entre cada linha.
buttons- Um parâmetro opcional. Uma expressão numérica que especifica o tipo de botão a ser exibido, o estilo do ícone a ser usado, a identidade do botão padrão e a modalidade da caixa de mensagem. Se deixado em branco, o valor padrão para os botões é 0.
Title- Um parâmetro opcional. Uma expressão String exibida na barra de título da caixa de diálogo. Se o título for deixado em branco, o nome do aplicativo será colocado na barra de título.
helpfile- Um parâmetro opcional. Uma expressão String que identifica o arquivo de Ajuda a ser usado para fornecer ajuda contextual para a caixa de diálogo.
context- Um parâmetro opcional. Uma expressão numérica que identifica o número do contexto da Ajuda atribuído pelo autor da Ajuda ao tópico da Ajuda apropriado. Se o contexto for fornecido, o arquivo de ajuda também deve ser fornecido.
o Buttons parâmetro pode assumir qualquer um dos seguintes valores -
0 vbOKOnly Exibe apenas o botão OK.
1 vbOKCancel Exibe os botões OK e Cancelar.
2 vbAbortRetryIgnore Exibe os botões Abortar, Repetir e Ignorar.
3 vbYesNoCancel Exibe os botões Sim, Não e Cancelar.
4 vbYesNo Exibe os botões Sim e Não.
5 vbRetryCancel Exibe os botões Repetir e Cancelar.
16 vbCritical Exibe o ícone de mensagem crítica.
32 vbQuestion Exibe o ícone de Consulta de Aviso.
48 vbExclamation Exibe o ícone de mensagem de aviso.
64 vbInformation Exibe o ícone de Mensagem de Informação.
0 vbDefaultButton1 O primeiro botão é o padrão.
256 vbDefaultButton2 O segundo botão é o padrão.
512 vbDefaultButton3 O terceiro botão é o padrão.
768 vbDefaultButton4 O quarto botão é o padrão.
0 vbApplicationModal Modal de aplicativo. O aplicativo atual não funcionará até que o usuário responda à caixa de mensagem.
4096 vbSystemModal Sistema modal. Todos os aplicativos não funcionarão até que o usuário responda à caixa de mensagem.
Os valores acima são divididos logicamente em quatro grupos: O primeiro grupo (0 a 5) indica os botões a serem exibidos na caixa de mensagem. O segundo grupo (16, 32, 48, 64) descreve o sistema do ícone a ser exibido, o terceiro grupo (0, 256, 512, 768) indica qual botão deve ser o padrão e o quarto grupo (0, 4096 ) determina a modalidade da caixa de mensagem.
Valores Retornados
A função MsgBox pode retornar um dos seguintes valores -
1 - vbOK - OK foi clicado
2 - vbCancel - Cancelar foi clicado
3 - vbAbort - Abort foi clicado
4 - vbRetry - Foi clicado novamente
5 - vbIgnore - Ignorar foi clicado
6 - vb Sim - Sim foi clicado
7 - vbNo - Não foi clicado
Exemplo
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
'Message Box with just prompt message
MsgBox("Welcome")
'Message Box with title, yes no and cancel Butttons
a = MsgBox("Do you like blue color?",3,"Choose options")
' Assume that you press No Button
document.write("The Value of a is " & a)
</script>
</body>
</html>
Quando o script acima é executado, a caixa de mensagem é exibida e, se você pressionar Nenhum botão, o valor de a será 7.
The Value of a is 7
Função VBScript InputBox
A função InputBox ajuda o usuário a obter os valores do usuário. Após inserir os valores, se o usuário clicar no botão OK ou pressionar ENTER no teclado, a função InputBox retornará o texto na caixa de texto. Se o usuário clicar no botão Cancelar, a função retornará uma string vazia ("").
Sintaxe
InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])
Descrição do Parâmetro
Prompt- Um parâmetro obrigatório. Um String que é exibido como uma mensagem na caixa de diálogo. O comprimento máximo do prompt é de aproximadamente 1.024 caracteres. Se a mensagem se estender por mais de uma linha, podemos separar as linhas usando um caractere de retorno de carro (Chr (13)) ou um caractere de alimentação de linha (Chr (10)) entre cada linha.
Title- Um parâmetro opcional. Uma expressão String exibida na barra de título da caixa de diálogo. Se o título for deixado em branco, o nome do aplicativo será colocado na barra de título.
Default- Um parâmetro opcional. Um texto padrão na caixa de texto que o usuário gostaria que fosse exibido.
XPos- Um parâmetro opcional. A posição do eixo X que representa a distância do prompt do lado esquerdo da tela horizontalmente. Se deixado em branco, a caixa de entrada é centralizada horizontalmente.
YPos- Um parâmetro opcional. A posição do eixo Y que representa a distância do prompt do lado esquerdo da tela verticalmente. Se deixado em branco, a caixa de entrada é centralizada verticalmente.
helpfile- Um parâmetro opcional. Uma expressão String que identifica o arquivo de Ajuda a ser usado para fornecer Ajuda contextual para a caixa de diálogo.
context- Um parâmetro opcional. Uma expressão numérica que identifica o número do contexto da Ajuda atribuído pelo autor da Ajuda ao tópico da Ajuda apropriado. Se o contexto for fornecido, o arquivo de ajuda também deve ser fornecido.
Exemplo
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
' Input Box with only Prompt
InputBox("Enter a number")
' Input Box with a Title
a = InputBox("Enter a Number","Enter Value")
msgbox a
' Input Box with a Prompt,Title and Default value
a = InputBox("Enter a Number","Enter Value",123)
msgbox a
' Input Box with a Prompt,Title,Default and XPos
a = InputBox("Enter your name","Enter Value",123,700)
msgbox a
' Input Box with a Prompt,Title and Default and YPos
a = InputBox("Enter your name","Enter Value",123,,500)
msgbox a
</script>
</body>
</html>
Quando o script acima é executado, a caixa de entrada é exibida e exibe o valor inserido pelo usuário.
O que é um objeto
Os objetos runtime do VBScript nos ajudam a realizar várias tarefas. Esta seção o ajudará a entender como instanciar um objeto e trabalhar com ele.
Sintaxe
Para trabalhar com objetos perfeitamente, precisamos declarar o objeto e instanciá-lo usando Set Palavra-chave.
Dim objectname 'Declare the object name
Set objectname = CreateObject(object_type)
Exemplo
No exemplo abaixo, estamos criando um objeto do tipo Scripting.Dictionary.
Dim obj
Set obj = CreateObject("Scripting.Dictionary")
Destruindo os Objetos
A importância de destruir o objeto é liberar a memória e redefinir a variável do objeto.
Sintaxe
Para destruir os objetos, precisamos usar Set Palavra-chave seguida pelo nome do objeto e aponta para Nothing.
Set objectname = Nothing 'Destroy the object.
Exemplo
No exemplo abaixo, estamos criando um objeto do tipo Scripting.Dictionary.
Dim obj
Set obj = CreateObject("Scripting.Dictionary")
Set obj = Nothing.
Uso de objeto
Clique em cada um dos tipos de objetos fornecidos para saber mais.
Tipo de objeto | Descrição |
---|---|
Classe | Class é um contêiner, que contém métodos e variáveis associados a ele e acessados criando um objeto de classe de tipo. |
Scripting.FileSystemObject | É o grupo de objetos com os quais podemos trabalhar com o sistema de arquivos. |
Scripting.Dictionary | Um grupo de objetos, que são usados para criar os objetos de dicionário. |
Depurar | Um objeto global com o qual podemos enviar saída para o depurador de script da Microsoft. |
Expressões regulares é uma sequência de caracteres que forma um padrão, que é usado principalmente para pesquisar e substituir. O propósito de criar um padrão é combinar strings específicas, de forma que o desenvolvedor possa extrair caracteres com base nas condições e substituir certos caracteres.
Objeto RegExp
O objeto RegExp ajuda os desenvolvedores a combinar o padrão de strings e as propriedades e métodos nos ajudam a trabalhar com expressões regulares facilmente. É semelhante a RegExp em JavaScript
Propriedades
Pattern - O método Pattern representa uma string que é usada para definir a expressão regular e deve ser definida antes de usar o objeto de expressão regular.
IgnoreCase- Uma propriedade booleana que representa se a expressão regular deve ser testada em relação a todas as correspondências possíveis em uma string, se verdadeira ou falsa. Se não for especificado explicitamente, o valor IgnoreCase é definido como False.
Global- Uma propriedade booleana que representa se a expressão regular deve ser testada em relação a todas as correspondências possíveis em uma string. Se não for especificado explicitamente, o valor global será definido como False.
Métodos
Test(string de pesquisa) - O método Test recebe uma string como argumento e retorna True se a expressão regular pode ser correspondida com sucesso com a string, caso contrário, False é retornado.
Replace(string de pesquisa, string de substituição) - O método Replace usa 2 parâmetros. Se a pesquisa for bem-sucedida, ela substitui essa correspondência pela string de substituição e a nova string é retornada. Se não houver correspondências, a string de pesquisa original é retornada.
Execute(string de pesquisa) - O método Execute funciona como Replace, exceto que retorna um objeto de coleção Matches, contendo um objeto Match para cada correspondência bem-sucedida. Não modifica a string original.
Objeto de coleção de correspondências
O objeto da coleção Matches é retornado como resultado do método Execute. Este objeto de coleção pode conter zero ou mais objetos Match e as propriedades deste objeto são somente leitura.
Count - O método Count representa o número de objetos de correspondência na coleção.
Item - O método Item permite que os objetos de correspondência sejam acessados a partir do objeto de coleções de correspondências.
Objeto de correspondência
O objeto Match está contido no objeto da coleção Match. Esses objetos representam a correspondência bem-sucedida após a pesquisa de uma string.
FirstIndex- Representa a posição dentro da string original onde ocorreu a correspondência. Este índice é baseado em zero, o que significa que a primeira posição em uma string é 0.
Length - Um valor que representa o comprimento total da string combinada.
Value- Um valor que representa o valor ou texto correspondente. Também é o valor padrão ao acessar o objeto Match.
Tudo sobre parâmetros de padrão
A construção do padrão é semelhante ao PERL. A construção de padrões é a coisa mais importante ao trabalhar com expressões regulares. Nesta seção, trataremos de como criar um padrão com base em vários fatores.
Posição correspondente
A importância da correspondência de posição é garantir que colocamos as expressões regulares nos lugares corretos.
Símbolo | Descrição |
---|---|
^ | Corresponde apenas ao início de uma string. |
$ | Corresponde apenas ao final de uma string. |
\ b | Corresponde a qualquer limite de palavra |
\ B | Corresponde a qualquer limite não-palavra |
Correspondência de literais
Qualquer forma de caracteres, como alfabeto, número ou caractere especial ou mesmo decimal, hexadecimal pode ser tratada como Literal. Como alguns dos caracteres já possuem um significado especial no contexto da Expressão Regular, precisamos escapar deles usando sequências de escape.
Símbolo | Descrição |
---|---|
Alfanumérico | Corresponde apenas a caracteres alfabéticos e numéricos. |
\ n | Corresponde a uma nova linha. |
\ [ | Corresponde [apenas literal |
\] | Matches] literal apenas |
\ ( | Corresponde (apenas literal |
\) | Corresponde) apenas literal |
\ t | Corresponde à guia horizontal |
\ v | Corresponde à guia vertical |
\ | | Partidas | apenas literal |
\ { | Corresponde a {literal apenas |
\} | Matches} literal apenas |
\\ | Corresponde a \ literal apenas |
\? | Partidas ? apenas literal |
\ * | Corresponde * apenas literal |
\ + | Corresponde + literal apenas |
\. | Partidas . apenas literal |
\ b | Corresponde a qualquer limite de palavra |
\ B | Corresponde a qualquer limite não-palavra |
\ f | Corresponde a um feed de formulário |
\ r | Corresponde ao retorno de carro |
\ xxx | Corresponde ao caractere ASCII de um número octal xxx. |
\ xdd | Corresponde ao caractere ASCII de um número hexadecimal dd. |
\ uxxxx | Corresponde ao caractere ASCII de um literal UNICODE xxxx. |
Correspondência de classes de personagens
As classes de caracteres são o padrão formado por agrupamento personalizado e colocado entre colchetes []. Se estamos esperando uma classe de caractere que não deveria estar na lista, devemos ignorar essa classe de caractere particular usando o símbolo negativo, que é um cap ^.
Símbolo | Descrição |
---|---|
[xyz] | Corresponde a qualquer uma das classes de caracteres incluídas no conjunto de caracteres. |
[^ xyz] | Corresponde a qualquer classe de caractere que NÃO esteja incluída no conjunto de caracteres. |
. | Corresponde a qualquer classe de caractere, exceto \ n |
\W | Corresponde a qualquer classe de caractere de palavra. Equivalente a [a-zA-Z_0-9] |
\W | Corresponde a qualquer classe de caractere que não seja de palavra. Equivalente a [^ a-zA-Z_0-9] |
\ d | Corresponde a qualquer classe de dígito. Equivalente a [0-9]. |
\ D | Corresponde a qualquer classe de caracteres sem dígitos. Equivalente a [^ 0-9]. |
\ s | Corresponde a qualquer classe de caractere de espaço. Equivalente a [\ t \ r \ n \ v \ f] |
\ S | Corresponde a qualquer classe de caractere de espaço. Equivalente a [^ \ t \ r \ n \ v \ f] |
Correspondência de Repetição
A correspondência de repetição permite várias pesquisas na expressão regular. Ele também especifica o número de vezes que um elemento é repetido em uma Expressão Regular.
Símbolo | Descrição |
---|---|
* | Corresponde a zero ou mais ocorrências da Expressão regular fornecida. Equivalente a {0,}. |
+ | Corresponde a uma ou mais ocorrências da expressão regular fornecida. Equivalente a {1,}. |
? | Corresponde a zero ou uma ocorrência da Expressão regular fornecida. Equivalente a {0,1}. |
{x} | Corresponde exatamente ao número x de ocorrências da expressão regular fornecida. |
{x,} | Corresponde pelo menos x ou mais ocorrências da expressão regular fornecida. |
{x, y} | Corresponde ao número xey de ocorrências da expressão regular fornecida. |
Alternação e agrupamento
A alternância e o agrupamento ajudam os desenvolvedores a criar expressões regulares mais complexas, tratando particularmente de cláusulas intrincadas dentro de uma expressão regular, o que oferece grande flexibilidade e controle.
Símbolo | Descrição |
---|---|
0 | Agrupando uma cláusula para criar uma cláusula. "(xy)? (z)" corresponde a "xyz" ou "z". |
| | A alternância combina uma cláusula de expressão regular e, em seguida, corresponde a qualquer uma das cláusulas individuais. "(ij) | (23) | (pq)" corresponde a "ij" ou "23" ou "pq". |
Criação de expressões regulares
Abaixo estão alguns exemplos que explicam claramente como construir uma Expressão Regular.
Expressão regular | Descrição |
---|---|
"^ \ s * .." e ".. \ s * $" | Representa que pode haver qualquer número de caracteres de espaço à esquerda e à direita em uma única linha. |
"((\ $ \ s?) | (# \ s?))?" | Representa um sinal opcional $ ou # seguido por um espaço opcional. |
"((\ d + (\. (\ d \ d)?)?))" | Representa que pelo menos um dígito está presente seguido por decimais opcionais e dois dígitos após decimais. |
Exemplo
O exemplo a seguir verifica se o usuário inseriu ou não um id de e-mail cujo formato deve corresponder de forma que haja um id de e-mail seguido por '@' e, em seguida, pelo nome de domínio.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
strid = "[email protected]"
Set re = New RegExp
With re
.Pattern = "^[\w-\.]{1,}\@([\da-zA-Z-]{1,}\.){1,}[\da-zA-Z-]{2,3}$"
.IgnoreCase = False
.Global = False
End With
' Test method returns TRUE if a match is found
If re.Test( strid ) Then
Document.write(strid & " is a valid e-mail address")
Else
Document.write(strid & " is NOT a valid e-mail address")
End If
Set re = Nothing
</script>
</body>
</html>
Existem três tipos de erros de programação: (a) Erros de sintaxe, (b) Erros de tempo de execução e (c) Erros lógicos.
Erros de sintaxe
Erros de sintaxe, também chamados de erros de análise, ocorrem no momento da interpretação do VBScript. Por exemplo, a linha a seguir causa um erro de sintaxe porque está faltando um parêntese de fechamento -
<script type = "text/vbscript">
dim x,y
x = "Tutorialspoint"
y = Ucase(x
</script>
Erros de tempo de execução
Erros de tempo de execução, também chamados de exceções, ocorrem durante a execução, após a interpretação. Por exemplo, a linha a seguir causa um erro de tempo de execução porque aqui a sintaxe está correta, mas em tempo de execução ela está tentando chamar fnmultiply, que é uma função não existente -
<script type = "text/vbscript">
Dim x,y
x = 10
y = 20
z = fnadd(x,y)
a = fnmultiply(x,y)
Function fnadd(x,y)
fnadd = x+y
End Function
</script>
Erros lógicos
Os erros lógicos podem ser o tipo de erro mais difícil de rastrear. Esses erros não são o resultado de uma sintaxe ou erro de tempo de execução. Em vez disso, eles ocorrem quando você comete um erro na lógica que orienta seu script e não obtém o resultado esperado. Você não pode detectar esses erros, porque depende de seus requisitos de negócios que tipo de lógica você deseja colocar em seu programa. Por exemplo, dividir um número por zero ou um script escrito que entra em um loop infinito.
Err Object
AAssume que se tivermos um erro de tempo de execução, a execução será interrompida exibindo a mensagem de erro. Como desenvolvedor, se quisermos capturar o erro, entãoError O objeto é usado.
Exemplo
No exemplo abaixo, Err.Number dá o número do erro e Err.Description fornece a descrição do erro.
<script type = "text/vbscript">
Err.Raise 6 ' Raise an overflow error.
MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description
Err.Clear ' Clear the error.
</script>
O VBScript tem algumas outras instruçõ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 ou não dados válidos. 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, ocorrerá 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