Compartir a través de


Uso de matrices

Se pueden utilizar varios tipos de matrices en JScript. En los apartados siguientes se explica cómo utilizar algunas de estas matrices y cómo elegir la matriz apropiada para una aplicación concreta.

Matrices unidimensionales

En el ejemplo siguiente se muestra cómo obtener acceso al primer y último elemento de la matriz addressBook. Se supone que en otra parte del script se ha definido y asignado un valor a addressBook. Dado que en las matrices de JScript los índices empiezan en cero, el primer elemento de una matriz es cero y el último elemento es la longitud de la matriz menos uno.

var firstAddress = addressBook[0];
var lastAddress = addressBook[addressBook.length-1];

Matrices de matricesMatrices multidimensionales

En las matrices de matrices o en las matrices multidimensionales se pueden almacenar datos a los que se haga referencia mediante varios índices. Cada tipo de matriz tiene características propias.

Las matrices de matrices son útiles para las aplicaciones en las que cada submatriz tiene una longitud diferente. Las submatrices pueden reorganizarse fácilmente, lo que simplifica la ordenación de los elementos de la matriz. Un ejemplo típico en el que se utilizan matrices de matrices es un calendario, en donde una matriz Year almacena doce matrices Month, y cada matriz Month almacena datos para el número de días correspondiente.

Las matrices multidimensionales son útiles en aplicaciones donde el tamaño de la matriz de cada dimensión se conoce en el momento de la declaración. Son más eficaces que las matrices de matrices en lo que respecta a velocidad y consumo de memoria. Las matrices multidimensionales deben ser matrices con tipo. Un ejemplo típico es una matriz utilizada en los cálculos matemáticos, donde el tamaño de la matriz es fijo y se conoce desde el principio.

Recorrer mediante un bucle los elementos de una matriz JScript

Dado que las matrices JScript son dispersas, pueden tener un gran número de elementos no definidos entre el primer y el último elemento. Esto significa que si utiliza un bucle for para tener acceso a los elementos de la matriz, deberá comprobar cada uno de los elementos para ver si son elementos no definidos.

Afortunadamente, JScript proporciona un bucle for...in que permite tener acceso fácilmente sólo a los elementos definidos de una matriz JScript. En el ejemplo siguiente se define una matriz JScript dispersa y se muestran sus elementos utilizando el bucle for y el bucle for...in.

var a : Array = new Array;
a[5] = "first element";
a[100] = "middle element";
a[100000] = "last element";
print("Using a for loop. This is very inefficient.")
for(var i = 0; i<a.length; i++)
   if(a[i]!=undefined)
      print("a[" + i + "] = " + a[i]);
print("Using a for...in loop. This is much more efficient.");
for(var i in  a)
   print("a[" + i + "] = " + a[i]);

El resultado de este programa es:

Using a for loop. This is very inefficient.
a[5] = first element
a[100] = middle element
a[100000] = last element
Using a for...in loop. This is much more efficient.
a[5] = first element
a[100] = middle element
a[100000] = last element

Vea también

Referencia

for...in (Instrucción)

Conceptos

Matrices de matrices

Matrices multidimensionales (Visual Studio - JScript)

Otros recursos

Matrices de JScript