Parámetros de VBScript ByVal

¿Qué son los parámetros de ByVal?

Si se especifica ByVal, los argumentos se envían como byvalue cuando se llama a la función o al procedimiento.

Ejemplo

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function fnadd(Byval num1, Byval num2)
            num1 = 4
            num2 = 5
         End Function
          
         Dim x,y
         x = 6
         y = 4
         res = fnadd(x,y)
         
         document.write("The value of x is " & x & "<br />")
         document.write("The value of y is " & y & "<br />")
       
      </script>
   </body>
</html>

La función anterior toma el parámetro xey como valores. Por lo tanto, después de ejecutar la función, los valores no cambian.

Si la función anterior se guarda como .html y se ejecuta en IE, la salida sería la siguiente:

The value of x is 6
The value of y is 4