6 - Forzar definición de variables |
Habíamos visto en el concepto anterior que las variables se creaban cuando le asignábamos un valor. Esto puede ser muy peligroso ya que podemos caer fácilmente en este error:
edad=22 ... ... response.write(ed)
Este programa no provoca error ya que cuando queremos imprimir la variable ed y el VBScript no la encuentra entre las definidas procede a crear una nueva variable.
El lenguaje VBScript nos permite indicarle que nos obligue a definir todas las variables que utilizamos en el programa. Esto se logra indicando en la primer línea el comando:
option explicit
Luego utilizamos la palabra dim seguida de las variables a definir.
Veamos un ejemplo donde definimos tres variables con los nombres de personas:
<%option explicit%> <html> <head> <title>problema</title> </head> <body> <% dim nom1,nom2,nom3 nom1="ana" nom2="carlos" nom3="luis" response.write(nom1) response.write("<br>") response.write(nom2) response.write("<br>") response.write(nom3) %> </body> </html>
Como podemos observar la primera línea del archivo es:
<%option explicit%>
Luego todas las variables que utilizaremos debemos definirlas seguidas de la palabra clave dim:
dim nom1,nom2,nom3
La asignación de variables no sufre cambios con respecto a lo visto:
nom1="ana"
Ahora bien si en alguna parte del programa nos equivocamos y tratamos de asignarle un valor a una variable inexistente (no definida) el programa se detiene y nos informa del error:
n1="ana"
Provoca un error similar a esto:
Microsoft VBScript runtime error '800a01f4' Variable is undefined: 'n1' /aspya/usuarios/190.30.94.164/pagina1.asp, line 9
Es muy conveniente la definición de variables, nos evitan muchos problemas cuando un programa es más grande y tenemos una gran cantidad de variables. Las nuevas tecnologías de Microsoft ASP.Net obligan por defecto la definición de variables.