Volver a la página principal de HTML en castellano
HTML en castellano recomienda...

Curso de Javascript 1.2


En esta página:


Tipos de datos

Un tipo de datos es la clase de valores que puede tomar un identificador (es decir, una variable o una constante). Si el tipo de datos es fecha, el identificador que tenga ese tipo sólo podrá almacenar fechas. En Javascript los tipos de datos se asignan dinámicamente según asignamos valores a las distintas variables y son los clásicos: cadenas, varios tipos de enteros y reales, valores booleanos, vectores, matrices, referencias y objetos.

Variables

Las variables son nombres que ponemos a los lugares donde almacenamos la información. En Javascript, deben comenzar por una letra o un subrayado (_), pudiendo haber además dígitos entre los demás caracteres. No es necesario declarar una variable, pero cuando se hace es por medio de la palabra reservada var. Una variable, cuando no es declarada, tiene siempre ámbito global, mientras que en caso contrario será de ámbito global si está definida fuera de una función, y local si está definida dentro:

var x;      // Accesible fuera y dentro de pruebas
y = 2;      // Accesible fuera y dentro de pruebas
function pruebas() {
  var z;      // Accesible sólo dentro de pruebas
  w = 1;      // Accesible fuera y dentro de pruebas
}

Se pueden declarar varias variables en una misma sentencia separándolos por comas:

var x, y, z;

El tipo de datos de la variable será aquel que tenga el valor que asignemos a la misma, a no ser que le asignemos un objeto por medio del operador new. Por ejemplo, si escribimos

b = 200;

Es de esperar que la variable b tenga tipo numérico.

Referencias

La parte sin duda más complicada de comprender y manejar en los lenguajes de programación tradicionales (y especialmente en C y C++) son los punteros. Por eso mismo (entre otras razones) fueron eliminados tanto de Java como de JavaScript. Sin embargo, algunas de sus capacidades han tenido que ser suplantadas con otras estructuras.

Los punteros se pueden usar para apuntar a otras variables, es decir, un puntero puede ser como un nuevo nombre de una variable dada. A esto se le suele llamar referencia. En JavaScript se pueden usar referencias a objetos y a funciones. Su mayor utilidad está en el uso de distinto código para distintos navegadores de forma transparente. Por ejemplo, supongamos que tenemos una función que sólo funciona en Internet Explorer 4, y tenemos una variable llamada IE4 que hemos puesto previamente a true (verdedero) sólo si el explorador del usuario es ese.

function funcionIE4() {...}

function funcionNormal() {...}

var funcion = (IE4) ? funcionIE4 : funcionNormal;
  // Si IE4 es verdadero, funcion es una referencia de funcionIE4
  // Si no, funcion es una referencia de funcionNormal
funcion();
  // La llamada que haremos realmente depende de la
  // línea anterior

En este código, cuando llamemos finalmente a funcion al final en realidad llamaremos a la función a la que en la línea anterior hemos decidido que se refiera.

Vectores y matrices

Estos tipos de datos complejos son un conjunto ordenado de elementos, cada uno de los cuales es en sí mismo una variable distinta. En Javascript, los vectores y las matrices son objetos. Como veremos que hacen todos los objetos, se declaran utilizando el operador new:

miEstupendoVector = new Array(20)

El vector tendrá inicialmente 20 elementos (desde el 0 hasta el 19). Si queremos ampliarlo no tenemos más que asignar un valor a un elemento que esté fuera de los límites del vector:

miEstupendoVector[25] = "Algo"

De hecho, podemos utilizar de índices cualquier expresión que deseemos utilizar. Ni siquiera necesitamos especificar la longitud inicial del vector si no queremos:

vectorRaro = new Array();
vectorRaro["A colocar en los bookmark"] = "HTML en castellano";

Hacer una matriz bidimensional es más complicado, ya que tenemos que hacer un bucle que cree un vector nuevo en cada elemento del vector original.