|
Introducción |
|
|
¿Qué es JavaScript? | |
|
JavaScript es un eficiente lenguaje de guionización desarrollado por Netscape para el desarrollo de cliente-servidor de Web. Si bien en mucho más riguroso que Java, no hay duda que JavaScript es un lenguaje completo basado en objetos. JavaScript trabaja de la manera siguiente: en el lado del cliente, Netscape Navigator o Internet Explorer interpretan los comandos de JavaScript (JScript en el caso de Microsoft) que están embebidos directamente en la página de HTML. Lo anterior significa que un guión de JavaScript puede ser ejecutado directamente en la computadora cliente sin necesidad de conectarse de nuevo al servidor. Al cambiar la tarea de ejecutar guiones del servidor al cliente, el proceso de añadir interactividad a la página se vuelve más rápido y eficiente. JavaScript es un lenguaje interpretado. A diferencia de los lenguajes compilados que crean código binario, los lenguajes interpretados se ejecutan "en el instante, comando por comando". Lo anterior implica que JavaScript es per se más simple que Java para tareas de control de páginas de HTML. La mejor manera de aprender el estado de la cuestión en JavaScript es darle un View Source a tus páginas favoritas y hackearte el código para obtener tips y trucos. Entre las cosas interesantes que puede realizar JavaScript mencionaremos sólo algunas:
¿Cómo podemos comparar JavaScript contra Java? Para empezar podemos remarcar el hecho de que Java es un lenguaje compilado y Java es interpretado. Sin embargo, también es cierto que JavaScript soporta mucha de la sintaxis básica y control de flujo de Java. En la siguiente tabla podemos ver las diferencias entre Java y JavaScript: | |
|
JavaScript |
Java |
|
Interpretado por el cliente, no se genera código binario. |
Compilado en el servidor antes de la ejecución por el cliente. |
|
Basado en Objetos. No tiene clases ni herencia; tiene objetos construídos y extensibles. |
Orientado a objetos. Los programas consisten de clases, instancias de clases, herencia, etc. |
|
Integrado a / embebido en HTML. |
En forma de applets que son accesados desde la página HTML. |
|
No declara los tipo de dato de las variables. |
Se debe declarar el tipo de dato de las variables. |
|
Ligado dinámico; las referencias a objetos se revisan al tiempo de ejecución. |
Ligado estático. Las referencias a objetos deben existir al tiempo de compilación. |
|
Seguro. No se puede escribir al disco duro. |
Seguro. No se puede escribir a disco duro. |
|
|
|
|
El Lenguaje JavaScript |
|
|
Antes que empecemos a programar guiones trataremos de entender bien cómo está construido el lenguaje. JavaScript está construido en base a tres bloques particulares:
| |
|
Valores, literales y nombres |
|
|
Los tipos de datos que acepta JavaScript son -básicamente- los siguientes:
| |
|
Expresiones y operadores |
|
|
Una expresión es un conjunto de literales (valores literales), variables, operadores y expresiones para un sólo valor. JavaScript soporta los siguientes tipos de expresiones:
JavaScript soporta varios operadores, los cuales actúan sobre un valor o conjunto de valores. JavaScript soporta operadores aritméticos, de cadena, lógicos y de comparación&endash;incluyendo operadores unarios y binarios. Lo anterior incluye todos los operadores aritméticos ordinarios, a saber: adición (+), substracción (-), multiplicación (*) y división (/). Además, el incremente (++) y el decremento (--). El operador suma puede usarse también para concatenar cadenas, por ejemplo: "Este es" + "el tutorial" + "de HTML" Los operadores lógicos son utilizados para comparar y contrastara valores y regresar un valor de cierto o falso. Por ejemplo, la intersección (||), la unión (&&). Los operadores de comparación comparan dos valores y regresan un valor lógico basado en el valor de verdad de la expresión. Los operadores de comparación incluyen la igualdad (==), la desigualdad (!=), el mayor que (>), el mayor o igual que (>=), el menor o igual que (<=), el menor que (<). | |
|
Estatutos |
|
|
JavaScript incluye estatutos pre-construidos que nos permiten realizar ciclos, por mencionar un ejemplo. Uno de los estatutos más importantes es el estatuto de función, que es la palabra reservada para crear o definir funciones&endash;conjuntos de procedimientos para realizar una tarea. Una vez definida, una función puede ser llamada a ejecución desde cualquier parte del guión. Algunos de los otros estatutos importantes se comentan a continuación:
| |
|
El Modelo de Objetos de JavaScript |
|
|
JavaScript está basado en un paradigma de orientación a objetos, si bien uno más simple. En JavaScript, un objeto está construido con propiedades que son variables o otros objetos. Las funciones asociadas con un objeto son llamadas los métodos del objeto. JavaScript incluye objetos y funciones pre-construidas pero podemos definir las que necesitemos. | |
|
Objetos pre-construidos |
|
|
JavaScript viene con varios objetos pre-construidos. Como las clases de Java, estos objetos preconcebidos permiten construir funciones básicas fácilmente en un programa de JavaScript sin tener que hacer todo el trabajo desde las bases del lenguaje. El primer objeto pre-construido es el objeto cadena. Cuando uno asigna un valor de cadena a una variable o propiedad se crea un objeto cadena. Por ejemplo: estacadena = "Este es un objeto cadena" La ventaja de hacer un objeto a una cadena es que un objeto cadena puede tener métodos asociados que permitan cambiar las propiedades de él. Ejemplo: document.write(estacadena.toUpperCase()) regresará "ESTE ES UN OBJETO CADENA" Cada página de Web tiene los siguientes objetos pre-construidos:
| |