Una matriz, no es más que una variable con una o varias dimensiones, en la que podemos almacenar el mismo tipo de datos que en una variable normal y corriente, pero nos permite acceder a contenido de una manera mucho más simple y fácil.

Para declarar una variable lo hacemos del siguiente modo:

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro");
</script>

Para acceder a su contenido tenemos dos opciones. Por un lado, podemos acceder a el contenido entero de la matriz:

<script language="javascript">
alert(matriz);
</script>

Que nos devuelve: uno,dos,tres,cuatro

O acceder al contenido de cada elemento de la matriz uno a uno:

<script language="javascript">
alert(matriz[0]);
</script>

Que nos devuelve: uno

Para recorrer todos los valores de la matriz es recomendable hacerlo mediante un bucle, como for o while.

¿Qué es lo que podemos hacer con un array? A continuación explicaré los siguientes métodos con ejemplos: concat, join, pop, push, shift, unshift, slice, splice, reverse y sort.

Concat nos sirve para unir en una nueva matriz, los valores de otras matrices.

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro");
otraMatriz = new Array("eins", "zwei", "drei", "vier");
diferenteMatriz = new Array("one", "two", "three", "four");
 
nuevo = matriz.concat(otraMatriz, diferenteMatriz);
alert(nuevo);
</script>

Devuelve: uno,dos,tres,cuatro,eins,zwei,drei,vier,one,two,three,four

Join nos permite obtener una matriz separada por un separador que nosotros queramos. Recordemos que por defecto salen separadas por comas.

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro");
 
nuevo = matriz.join(" - ");
alert(nuevo);
</script>

Nos devuelve: uno – dos – tres – cuatro

Pop nos permite eliminar y obtener el último valor de una matriz.

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro");
 
nuevo = matriz.pop(matriz);
alert(nuevo);
alert(matriz);
</script>

Nos devuelve: cuatro
y: uno,dos,tres

Push nos añade un nuevo elemento a la matriz por detrás, y nos dice cuantos elementos existen (tras añadirlo).

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro");
 
nuevo = matriz.push(matriz);
alert(nuevo);
alert(matriz);
</script>

Nos devuelve: 5
y: uno,dos,tres,cuatro,cinco

Shift nos permite eliminar y obtener el primer valor de una matriz.

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro");
 
nuevo = matriz.shift(matriz);
alert(nuevo);
alert(matriz);
</script>

Nos devuelve: uno
y: dos,tres,cuatro

Unshift nos añade un nuevo elemento a la matriz por delante, y nos dice cuantos elementos existen (tras añadirlo).

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro");
 
nuevo = matriz.unshift("cero");
alert(nuevo);
alert(matriz);
</script>

Nos devuelve: 5
y: cero,uno,dos,tres,cuatro,cinco

Slice nos permite obtener una matriz cuyos valores sean los de otra matriz, delimitados por un inicio y un fin.

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro", "cinco", "seis", "siete", "ocho");
 
nuevo = matriz.slice(1, 6);
alert(nuevo);
</script>

Nos devuelve: dos,tres,cuatro,cinco,seis

Splice nos permite introducir en una matriz valores nuevos, a partir de la posición que queramos, incluso si queremos sobreescribir algunos ya existentes. También se puede usar para borrar los valores existentes entre un rango de índices.

Su sentencia es la siguiente:

<script language="javascript">
matriz.splice(inicio, borrados, valor1, valor2, ..., valorN);
</script>

Inicio es la posición en donde empezará a añadir o borrar.
Borrados es el número de elementos que se quieren borrar. Si ponemos un 0, solamente añadirá valores.
Valor1, valor2, …, valorN son los valores que deseamos añadir.

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro", "cinco", "seis", "siete", "ocho");
 
matriz.splice(2, 0, "dos y medio");
//Simplemente, añadimos el valor "dos y medio" tras el segundo elemento, sin borrar nada.
alert(matriz);
</script>

Nos devuelve: uno,dos,dos y medio,tres,cuatro,cinco,seis,siete,ocho

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro", "cinco", "seis", "siete", "ocho");
 
matriz.splice(2, 4);
//Borramos, a partir del segundo elemento (no incluido) 4 elementos.
alert(matriz);
</script>

Nos devuelve: uno,dos,siete,ocho

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro", "cinco", "seis", "siete", "ocho");
 
matriz.splice(1, 4, "two", "three", "four");
//Eliminamos 4 a partir del primer elemento, y añadimos 3 más
alert(matriz);
</script>

Nos devuelve: uno,two,three,four,seis,siete,ocho

Reverse nos permite intercambiar el orden de los elementos de una matriz, de forma que el primero pasa a ser el último, el segundo el antepenúltimo.. etc.

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro");
 
matriz.reverse();
alert(matriz);
</script>

Nos devuelve: cuatro,tres,dos,uno

Sort nos permite ordenar la matriz alfabéticamente.

<script language="javascript">
matriz = new Array("uno", "dos", "tres", "cuatro");
 
matriz.sort();
alert(matriz);
</script>

Nos devuelve: cuatro,dos,tres,uno