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.