VBScript - Procedimientos
¿Qué es una función?
Una función es un grupo de código reutilizable que se puede llamar en cualquier parte de su programa. Esto elimina la necesidad de escribir el mismo código una y otra vez. Esto permitirá a los programadores dividir un programa grande en varias funciones pequeñas y manejables. Además de las funciones incorporadas, VBScript también nos permite escribir funciones definidas por el usuario. Esta sección le explicará cómo escribir sus propias funciones en VBScript.
Definición de función
Antes de usar una función, necesitamos definir esa función en particular. La forma más común de definir una función en VBScript es mediante el uso de la palabra clave Function, seguida de un nombre de función único y puede o no llevar una lista de parámetros y una declaración con unEnd Function palabra clave, que indica el final de la función.
La sintaxis básica se muestra a continuación:
<!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>
Ejemplo
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Function sayHello()
msgbox("Hello there")
End Function
</script>
</body>
</html>
Llamar a una función
Para invocar una función en algún lugar más adelante en el script, simplemente necesitaría escribir el nombre de esa función con el Call palabra clave.
<!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 función
Hasta ahora, hemos visto funciones sin un parámetro, pero existe la posibilidad de pasar diferentes parámetros mientras se llama a una función. Estos parámetros pasados se pueden capturar dentro de la función y cualquier manipulación se puede realizar sobre esos parámetros. Las funciones se llaman usando elCall Palabra clave.
<!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>
Devolver un valor de una función
Una función de VBScript puede tener una declaración de retorno opcional. Esto es necesario si desea devolver un valor de una función. Por ejemplo, puede pasar dos números en una función y luego puede esperar que la función devuelva su multiplicación en su programa de llamada.
NOTE - Una función puede devolver varios valores separados por comas como una matriz asignada al nombre de la función en sí.
Ejemplo
Esta función toma dos parámetros y los concatena y devuelve el resultado en el programa de llamada. En VBScript, los valores se devuelven desde una función utilizando el nombre de la función. En caso de que desee devolver dos o más valores, el nombre de la función se devuelve con una matriz de valores. En el programa de llamada, el resultado se almacena en la variable 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>
Ahora, podemos llamar a esta función de la siguiente manera:
<!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>
Subprocedimientos
Los subprocedimientos son similares a las funciones, pero hay pocas diferencias.
Subprocedimientos NO Devolver un valor mientras que las funciones pueden o no devolver un valor.
Subprocedimientos Se pueden llamar sin la palabra clave de llamada.
Los subprocedimientos siempre están incluidos en Sub y End Sub declaraciones.
Ejemplo
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Sub sayHello()
msgbox("Hello there")
End Sub
</script>
</body>
</html>
Procedimientos de llamada
Para invocar un procedimiento en algún lugar más adelante en el script, simplemente necesitaría escribir el nombre de ese procedimiento con o sin el Call palabra clave.
<!DOCTYPE html>
<html>
<body>
<script language = "vbscript" type = "text/vbscript">
Sub sayHello()
msgbox("Hello there")
End Sub
sayHello()
</script>
</body>
</html>
Conceptos avanzados de funciones
Hay mucho que aprender sobre las funciones de VBScript. Podemos pasar el parámetro por valor o por referencia. Haga clic en cada uno de ellos para conocer más.