Funcții și proceduri VBScript cu exemplu
Proceduri VBScript
Procedurile VBScript sunt utilizate în principal pentru organizarea și reutilizarea codului. Am folosit exemple simple până acum, deoarece aici scopul este de a învăța VBScript. Dar în scenariul real, codul nu este atât de simplu. Când încercați să implementați ceva util, codul poate deveni mai complex. Ar putea exista sute de linii care se întind pe mai multe pagini.
Dacă nu organizați corect codul, întregul proces de codare, depanare și gestionare a codului va deveni cu adevărat complex. Deci, ar trebui să organizați sau să modularizați codul cu atenție, astfel încât codul să devină ușor de gestionat.
Mai mult, să presupunem că aveți un set de instrucțiuni care efectuează o anumită acțiune. Vrei ca aceeași acțiune să fie repetată de mai multe ori. Atunci, de ce ar trebui să scrieți același cod din nou și din nou? Folosind tehnici eficiente, vă puteți face codul reutilizabil. Acest lucru îi va ajuta pe dezvoltatori să organizeze frumos codul și pe testeri să identifice cu ușurință erorile. Pe scurt, modularizarea și reutilizarea codului este foarte importantă pentru a face codul mai puternic, mai fiabil și mai ușor de întreținut. Iată procedurile într-o imagine.
Tipuri de proceduri în VBScript
O procedură este un bloc de cod care în mod ideal îndeplinește o singură funcție. Un bloc de cod care procesează o intrare sau gestionează un fișier este un bun exemplu de funcție. Există două tipuri de proceduri în vbscript.
- Subprocedura: Subprocedura nu returnează o valoare.
- Procedura funcției: Procedura funcției este utilizată dacă doriți să returnați o valoare.
Subproceduri
Dacă doriți să executați o serie de instrucțiuni fără a returna nicio valoare, atunci puteți utiliza subproceduri.
Subprocedurile încep și se termină cu instrucțiuni Sub și, respectiv, End Sub. Subprocedurile pot lua argumente, dar nu pot returna o valoare. Subprocedurile pot primi sau nu input.
Sub outputMessage() document.write("Welcome") End Sub
Doar scrierea acestui cod nu va scoate nimic. Aici ați creat o procedură Sub numită outputMessage. Apoi, trebuie să-l suni.
apelați outputMessage()
Combinați ambele seturi de coduri în interior tag like this.
<script type="text/vbscript"> Sub outputMessage() document.write("Welcome") End Sub call outputMessage() </script>
Ieșirea acestui cod va fi
Funcții VBScript
Dacă doriți să executați o serie de instrucțiuni și să returnați o valoare, atunci trebuie să utilizați proceduri de funcție, cunoscute în mod obișnuit sub numele de funcție.
Procedurile de funcționare încep și se termină cu instrucțiuni Function și, respectiv, End Function.
O procedură de funcție poate sau nu să preia intrare.
Procedurile funcției returnează o valoare prin atribuirea valorii numelui acesteia.
<script type="text/vbscript"> Function findArea(radius) const pi=3.14 area = pi*radius*radius findArea = area End Function document.write("The area of the circle when the radius is 20 is " & findArea(20) &"<br/>") document.write("The area of the circle when the radius is 10 is " & findArea(10)) </script>
Ieșirea acestui cod va fi
Parametrii ByRef și ByVal
Puteți transmite argumente VBScript procedurilor prin referință sau după valoare.
Dacă nu specificați nimic atunci când apelați o procedură, atunci argumentul/argumentele sunt transmise implicit prin referință.
Dacă modificările aduse argumentelor persistă chiar și după apelarea procedurii, atunci trebuie să treceți argumentele VBScript prin referință.
Atunci când un argument este transmis după valoare, orice modificare pe care procedura apelată le aduce valorii lui variabil nu persistă după apelarea procedurii.
Cuvintele cheie ByRef și ByVal sunt folosite pentru a transmite argumente prin referință și, respectiv, după valoare.
Pentru a înțelege diferența, mai întâi, executați codul de mai jos și vedeți rezultatul.
Pas 1) Copiați codul în editorul dvs
<script type="text/vbscript"> Function returnResult(ByRef value) value = value +1 returnResult = value End Function Dim x x=5 call returnResult(x) document.write(x) </script>
Pas 2) ieșirea este 6.
Pas 3) Schimbați Funcția returnResult(ByRef value) în Function returnResult(ByVal value)
Pas 4) Acum rezultatul dvs. va fi 5.
Rezumat
- Procedurile VBScript sunt utilizate în principal pentru o mai bună organizare și reutilizare a codului.
- Există două tipuri de proceduri VBS: proceduri secundare și proceduri de funcție.
- Dacă doriți să executați o serie de instrucțiuni fără a returna nicio valoare, atunci puteți utiliza subproceduri.
- Dacă doriți să executați o serie de instrucțiuni și să returnați o valoare, atunci trebuie să utilizați procedurile funcției.
- Puteți transmite argumente procedurilor prin referință sau după valoare. Argumentele sunt transmise implicit prin referință.
- Dacă doriți să faceți modificările apărute la argumente să persistă chiar și după apelarea procedurii, atunci trebuie să treceți argumentele prin referință și, altfel, după valoare.