Simple Functions in VBScript
Functions in VBScript
Functions are used to perform the specific task.Functions are used to increase the reusability of the code. Functions are similar to the procedures except one difference that functions can return value.
Simple example of the function
Suppose you want to find the sum of 2 numbers. Without functions, you will write below code.
a = 10b = 20c = a+ bMsgbox c
To add another 2 different numbers, you will use below code
a = 33b = 65c = a+ bMsgbox c
In above examples, we have to add 2 numbers. So the operation is same (Repeating) So we can write the function which will take 2 parameters as shown below.
function sum(byref a, byref b)sum = cint(a) + cint(b)end function
Calling functions in VBScript
To call the procedures we can use below statements.
c = sum(10,20)msgbox cc = sum(33,65)msgbox c
Thus we can call functions many times in the code. This reduces the lines of code as well as maintainability of the code.
Passing arguments to the function
We can pass the arguments to the function by 2 ways.
- Pass by reference
- Pass by value
Pass by reference
By default, values are passed to the function by reference. When we pass the values by reference the changes made to the variables in the called function are reflected in the calling function/procedure.
a = 10c = findsqr(a)msgbox a 'prints 100msgbox c 'prints 100function findsqr(byref a)a = a*afindsqr = aend function
Pass by value
When we pass the values by value, the changes made to the variables in the called function are not reflected in the calling procedure or function.
a = 10c = findsqr(a)msgbox a 'prints 10msgbox c 'prints 100function findsqr(byval a)a = a*afindsqr = aend function
Other built-in functions in VBScript
- msgbox
- inputbox
- eval
- execute
msgbox function is used to show message to the user.
inputbox function is used to read the value from the user.
a = inputbox("Enter the number")msgbox a 'prints 33
Inputbox function in vbscript |
Eval and execute functions are used to execute any valid vbscript expression. Difference between 2 functions is that the operator = is handled in different ways.
Eval always uses = as a comparison operator.Execute always uses = as a assignment operator.
Example -
a=20msgbox eval("a=10") 'will print falsemsgbox aa=20execute("a=10")msgbox a 'will print 10
0 comments:
Post a Comment