Lenguajes de script
Un lenguaje de script es un pequeño lenguaje de
programación cuyo código se inserta dentro del
documento HTML. Este código se ejecuta en el navegador del
usuario al cargar la página, o cuando sucede algo especial
como puede ser el pulsar sobre un enlace.
Estos lenguajes permiten variar dinámicamente el contenido
del documento, modificar el comportamiento normal del navegador,
validar formularios, realizar pequeños trucos visuales, etc...
Sin embargo, conviene recordar que se ejecutan en el navegador del
usuario y no en la máquina donde estén alojadas, por lo
que no podrán realizar cosas como manejar bases de datos. Esto
hace que los contadores (por ejemplo) se deban realizar de otra manera,
utilizando programas CGI.
El primer lenguaje de script que vió la luz fue el
JavaScript de Netscape. Nacido con la versión 2.0 de este navegador
y basado en la sintaxis de Java, su utilidad y el casi absoluto monopolio
que entonces ejercía Netscape en el mercado de navegadores permitieron
que se popularizara y extendiera su uso.
El máximo rival del Netscape Navigator, el Internet Explorer
de Microsoft, comenzó a soportar este lenguaje en su versión
3.0. Fue también entonces cuando introdujo el único rival serio
que el JavaScript ha tenido en el mercado de los lenguajes de script:
el VBScript. Basado en el lenguaje BASIC, no ha tenido excesiva difusión
en Internet debido a la previa implantación del JavaScript y a que
son de parecida funcionalidad, pero sí es utilizado dentro de
Intranets basadas en el Explorer y dentro de otras aplicaciones de Microsoft,
como IIS, Access, Word, etc..
Javascript
Como este curso está orientado a Internet, no vamos a ver nada
de VBScript aquí por las razones comentadas anteriormente. Pero para
ilustrar la utilidad de los lenguajes de script, vamos a realizar
una pequeña introducción al Javascript. Si te sientes
interesado, visita mi
curso de JavaScript 1.2 para mayor información sobre el tema.
Vamos a realizar nuestro primer "programa" en JavaScript. Haremos surgir
una ventana que nos muestre el famoso mensaje "hola, mundo". Así
podremos ver los elementos principales del lenguaje. El siguiente
código es una página Web completa con un botón que,
al pulsarlo, muestra el mensaje.
holamundo.html
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!---
function HolaMundo() {
alert("¡Hola, mundo!");
}
// --->
</SCRIPT>
</HEAD>
<BODY>
<FORM>
<INPUT TYPE="button" NAME="Boton" VALUE="Pulsame" onClick="HolaMundo()">
</FORM>
</BODY>
</HTML>
Y aquí está nuestro ejemplo funcionando:
Ahora vamos a ver, paso por paso, que significa cada uno de los elementos
extraños que tiene la página anterior:
<SCRIPT LANGUAGE="JavaScript">
</SCRIPT>
Dentro de estos elementos será donde se puedan poner funciones en
JavaScript. Puedes poner cuantos quieras a lo largo del documento y en el
lugar que más te guste. Si un navegador no entiende la etiqueta
<SCRIPT> escribirá lo que hay entre medias de estos
elementos, así que lo encerramos entre comentarios por si las
moscas.
function HolaMundo() {
alert("¡Hola, mundo!");
}
Esta es nuestra primera función en JavaScript. En el código
de la misma vemos una llamada al método alert (que
pertenece al objeto window) que es la que se encarga de mostrar
el mensaje en pantalla. Por un fallo del Netscape no se pueden poner las
etiquetas HTML de caracteres especiales en una función: no los
reconoce. Así que pondremos directamente "¡"
arriesgándonos a que salga de otra manera en ordenadores con un
juego de caracteres distinto al del nuestro.
<FORM>
<INPUT TYPE="button" NAME="Boton" VALUE="Pulsame" onClick="HolaMundo()">
</FORM>
Dentro del elemento que usamos para mostrar un botón vemos
una cosa nueva: onClick. Es un evento. Cuando el usuario
pulsa el botón, el evento onClick se dispara y ejecuta el
código que tenga entre comillas, en este caso la llamada a la
función HolaMundo(), que tendremos que haber definido
con anterioridad.
Este ejemplo muestra una pequeña parte de las funcionalidades
del JavaScript. De hecho, su utilidad es más bien escasa, por eso
te recomiendo de nuevo que eches un vistazo a
mi curso de JavaScript.