Monday, August 07, 2006

JAVASCRIPT. Uso avanzado de variables (variables como estructuras)

Antes de comenzar, realizaré un breve resumen de las propiedades.

Propiedades de las variables en javascript.
  • No tienen tipo predefinido.
  • No es necesario declararlas (para forzar la declaración emplear la palabra reservada var).
  • Pueden contener un elemento de cualquier tipo. Entendiendo por elemenento: tipo de dato simple (cadena de texto, booleano, entero...) , compuesto (objeto de una clase) o incluso funciones.
  • Pueden ser multivaluadas. Esto último puede ser visto como una instancia de una estructura.
Algunas propiedades generales de JavaScript.
  • Lenguaje interpretado.
  • Es Case-Sensitive.
  • Las conversiones de tipo son realizadas de forma implícita por el intérprete JavaScript.
  • No es necesario terminar las sentencias con ";". Especial cuaidado en este punto, ya que en caso de no usar ";" el intérprete considerará que cada instrucción consta de una línea (hasta carácter retorno de carro). Se recomienda seguir la misma política de marcado de fin de instrucción en toda la programación del documento web, ya que intercalar instrucciones finalizadas con ";" con otras que no puede inducir a errores.
Bueno teniendo en cuenta lo anterior, vamos al lio...

Javascript proporciona una gran flexibilidad a la hora de trabajar con las variables. Además del uso común de las variables.

Ejemplo:
En C En JavaScript
int i=1; [i=1 | i=1; | var i=1 | var i =1;]

Permite, de manera trasparente, la creación de estructuras complejas y su uso.

Ejemplo:
En JavaScript
//Declaración
var variable = {
cadena1: "cadena 1",
cadena2: "cadena 2 y cadena 3",
numero: 123,
booleano: true,
funcion1: funcion1(){
/* Código de la función */
},
funcion2: funcion2(parametro1, parametro2){
/* Código de la función */
}
};

//Uso
Alert(variable.cadena1);
variable.funcion1();
variable.funcion2("valor",true);

Explicación.
Lo que hacemos es aprovechar determinadas características del lenguaje, tales como variables multivaluadas y la no necesidad de especificar el tipo (recordando, las conversiones a tipo fnal son implícitas).
Como se puede ver en el ejemplo es muy sencillo crear estructuras, en principio tan complejas como queramos.
Una cosa más, no es necesario que las funciones internas a la variable devuelvan ningun valor, pero es preferible que lo hagan para evitar posibles errores.

0 Comments:

Post a Comment

<< Home