M�todos Avanzados / Javascript y Objetos

Javascript & Objetos

El concepto del programa de objetos es importante tanto en Java como en Javascript. Objetos son secciones en c�digos independientes individualmente contenidas que pueden ser hechas para trabajar unidas. Programas escritos en lenguajes que usan �stas construcciones deben ser dise�adas en t�rminos de c�mo los objetos se relacionan entre s�, no meramente como tirillas de instrucciones sequenciales. (Ahora, los objetos son unaparte muy integral de Perl 5, lo �ltimo del lenguaje; versiones anticuadas de Perl no usaban objetos.)

Java y Perl 5 son lenguajes orientados en objetos, pero Javascript es un lenguaje basado en objetos. Una diferencia entre los dos tipos de lenguajes es el hecho de que el primero te permite definir nuevos objetos tal y como lo desees, y el �ltimo te permite usar un conjunto de objetos predefinidos.

Javascript tiene un conjunto de objetos que los asocia con el navegador, varias de sus ventanasm y muchas etiquetas de HTML. Ademas, algunos de estos objetos de Javascript tienen o m�todos o propiedades (o ambos) que te permite referirse a partes de una p�gina de la Red refiriendose alos objetos. (Un m�thodo es una funci�n que act�a sobre un objeto en espec�fico, y una propiedad es un aspecto o pieza de data que caracteriza un objeto.) Una consequencia de �sto es que a veces es posible cambiar porciones de una p�gina de la red din�micamente con Javascript, sin tener que invocar un escrito del servidor o recargar la p�gina completa.

El Objeto del Navegador
(The Navigator Object)

Javascript tiene un objeto navegador ( navigator ) que el lenguaje asocia con el navegador en si. Este objeto tiene cuatro propiedades que te dicen cosas sobre el navegador que est�s usando. (tales como nombre, n�mero de versi�n el sistema operativo que lo corre, etc.) Estas propiedades se dnominan: appName, appVersion, appCodeName, y userAgent.

En un lenguaje orientado con objeto o basado en objetos uno generalmente se le refiere a la propiedad de un objeto con una notaci�n de "punto" :
                                                                           object.property

Por ejemplo, el objeto del navegador, appName puede ser accesado v�a navigator.appName.

Ahora usamos un peque�o pedazo de c�digo de Javascript para buscar las cuatro propiedades del objeto navegador teniendo los siguientes valores para el navegador que usas en �stos momentos:



(Intenta ver �sta p�gina con por lo menos dos navegadores diferentes para que veas los diferentes resultados que se muestran.)

El c�digo Javascript que produce la pasada informaci�n es:

<script language="Javascript">
<!-- hide script from old browsers
document.writeln("navigator.appName = " +
navigator.appName + "<br>");
document.writeln("navigator.appVersion = " +
navigator.appVersion + "<br>");
document.writeln("navigator.appCodeName = " +
navigator.appCodeName + "<br>");
document.writeln("navigator.userAgent = " +
navigator.userAgent + "<br>");
// done hiding-->
</script>
 

Algunas cosas que podemos notar sobre esta secci�n de c�digo:

1. La secci�n completa est� hecha en una etiqueta <script> ... </script>. Puedes tener cualquier n�mero de ellos en una p�gina.

2. Esta etiqueta tiene el atributo de language="Javascript" para distinguir el lenguaje en la secci�n de c�digo de otros lenguajes escritos que pueden ser usados en los navegadores (ej., Microsoft's VBScript).

3. El c�digo tambi�n se encuentra dentro de un comentario de HTML (la secci�n entre las l�neas marcadas "hide script from old browsers" y "done hiding"). Si no estuvieran hechas, los navegadores que no manejan Javascript simplemente podr�an imprimir la secci�n del c�digo verbatum. Pero colocando el c�digo dentro de un comentario de HTML �stos navegadores de Javascript no mostrar�n nada en el momento.

4. El mandato de Javascript para imprimir una l�nea de texto es document.writeln(); lo escrito dentro de los par�ntesis es lo que se imprime.

5. En el argumento document.writeln() aparecen nombres variados como navigator.appName, literalmente cuando son colocados dentro de las marcas de citas dobles aunque su valor es sustitut�do si las marcas son omitidas.