dominios y alojamiento web en hostalia

Arrays en Javascript

22 de diciembre de 2001
Valoración del artículo:
Vemos que son los arrays en Javascript, para qué sirven y cómo utilizarlos. Veremos diversas formas de crearlos, así como definir y acceder a sus valores.
Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.
Pasamos a un nuevo tema en el Manual de Javascript, en el que vamos a conocer nuestra primera estructura de datos.

En los lenguajes de programación existen estructuras de datos especiales que nos sirven para guardar información más compleja que simples variables. Una estructura típica en todos los lenguajes es el Array, que es como una variable donde podemos introducir varios valores, en lugar de solamente uno como ocurre con la variables normales.

Los arrays nos permiten guardar varias variables y acceder a ellas de manera independiente, es como tener una variable con distintos compartimentos donde podemos introducir datos distintos. Para ello utilizamos un índice que nos permite especificar el compartimiento o posición a la que nos estamos refiriendo.

Nota: Los arrays se introdujeron en versiones Javascript 1.1 o superiores, es decir, solo los podemos utilizar a partir de los navegadores 3.0. Para navegadores antiguos se puede simular el array utilizando sintaxis de programación orientada a objetos, pero la verdad es que actualmente esta limitación no debe preocuparnos. Además, dada la complejidad de la tarea de simular un array por medio de objetos, por lo menos en el momento en que nos encontramos y las pocas ocasiones en que lo necesitaremos, opinamos que es mejor olvidarnos de ese asunto y trabajar simplemente con los arrays normalmente. Así que en este artículo y los siguientes vamos a ver cómo utilizar el auténtico array de Javascript.

Creación de Arrays javascript

El primer paso para utilizar un array es crearlo. Para ello utilizamos un objeto Javascript ya implementado en el navegador. Veremos en adelante un tema para explicar lo que es la orientación a objetos, aunque no será necesario para poder entender el uso de los arrays. Esta es la sentencia para crear un objeto array:

var miArray = new Array()

Esto crea un array en la página que esta ejecutándose. El array se crea sin ningún contenido, es decir, no tendrá ninguna casilla o compartimiento creado. También podemos crear el array Javascript especificando el número de compartimentos que va a tener.

var miArray = new Array(10)

En este caso indicamos que el array va a tener 10 posiciones, es decir, 10 casillas donde guardar datos.

Es importante que nos fijemos que la palabra Array en código Javascript se escribe con la primera letra en mayúscula. Como en Javascript las mayúsculas y minúsculas si que importan, si lo escribimos en minúscula no funcionará.

Tanto se indique o no el número de casillas del array javascript, podemos introducir en el array cualquier dato. Si la casilla está creada se introduce simplemente y si la casilla no estaba creada se crea y luego se introduce el dato, con lo que el resultado final es el mismo. Esta creación de casillas es dinámica y se produce al mismo tiempo que los scripts se ejecutan. Veamos a continuación cómo introducir valores en nuestros arrays.

miArray[0] = 290
miArray[1] = 97
miArray[2] = 127


Se introducen indicando entre corchetes el índice de la posición donde queríamos guardar el dato. En este caso introducimos 290 en la posición 0, 97 en la posición 1 y 127 en la 2.

Los arrays en Javascript empiezan siempre en la posición 0, así que un array que tenga por ejemplo 10 posiciones, tendrá casillas de la 0 a la 9. Para recoger datos de un array lo hacemos igual: poniendo entre corchetes el índice de la posición a la que queremos acceder. Veamos cómo se imprimiría en la pantalla el contenido de un array.

var miArray = new Array(3)

miArray[0] = 155
miArray[1] = 4
miArray[2] = 499

for (i=0;i<3;i++){
    document.write("Posición " + i + " del array: " + miArray[i])
    document.write("<br>")
}


Hemos creado un array con tres posiciones, luego hemos introducido un valor en cada una de las posiciones del array y finalmente las hemos impreso. En general, el recorrido por arrays para imprimir sus posiciones, o cualquier otra cosa, se hace utilizando bucles. En este caso utilizamos un bucle FOR que va desde el 0 hasta el 2.

Podemos ver el ejemplo en marcha en otra página.

Tipos de datos en los arrays

En las casillas de los arrays podemos guardar datos de cualquier tipo. Podemos ver un array donde introducimos datos de tipo carácter.

miArray[0] = "Hola"
miArray[1] = "a"
miArray[2] = "todos"


Incluso, en Javascript podemos guardar distintos tipos de datos en las casillas de un mismo array. Es decir, podemos introducir números en unas casillas, textos en otras, boleanos o cualquier otra cosa que deseemos.

miArray[0] = "desarrolloweb.com"
miArray[1] = 1275
miArray[1] = 0.78
miArray[2] = true

Declaración e inicialización resumida de Arrays

En Javascript tenemos a nuestra disposición una manera resumida de declarar un array y cargar valores en un mismo paso. Fijémonos en el código siguiente:

var arrayRapido = [12,45,"array inicializado en su declaración"]

Como se puede ver, se está definiendo una variable llamada arrayRapido y estamos indicando en los corchetes varios valores separados por comas. Esto es lo mismo que haver declarado el array con la función Array() y luego haberle cargado los valores uno a uno.

En el próximo artículo seguiremos viendo cosas relacionadas con los arrays, en concreto aprenderemos a acceder a la longitud de un array.

Compartir en redes sociales

Comentarios
Fueron enviados 7 comentarios al artículo
7 comentarios revisados:
Por: Ernesto
08/12/2006
Un curso excelente de javascript
bueno
Por: Elsie
10/6/2009
me gusto la explicacion y me ha ayudado mucho gracias.
Problema con arreglo en IE
Por: Marcel
27/8/2010
Hola , tengo un problema con arrays en IE, en la siguiente funcion, un array es pasado como parametro pero los elementos de este se tornan en undefined al recorrer dicho array con un loop for

function removerComas(arr){
var arreglo=[];
var j=0;

for(var i=0;i < arr.length; i++){

if (arr[i] != ','){

arreglo[j]=arr[i];
j++;
}

}

return arreglo;
}

Que puedo hacer ??? gracias
Respuesta a problema de javascript en IE
Por: MizaR ZetA
20/10/2010
Tu código no tiene error, yo lo probe y funciona tal cual, lo que no entiendo es que quieres hacer con ese array pues solo verificas si el valor de la casilla es una coma. Te paso la pequeña prueba que hice y funciona sin problemas.

var arr = new Array("1",",","3",",");
var arr2 = removerComas(arr);
for(var i=0;i < arr2.length; i++){
alert(arr2[i]);
}

function removerComas(arr){
var arreglo=[];
var j=0;
for(var i=0;i < arr.length; i++){
if (arr[i] != ','){
arreglo[j]=arr[i];
j++;
}
}
return arreglo;
}
arrays y menus
Por: Luis
13/12/2010
hola buenas
alguien me puede ayudar con este ejercicio

Hacer un programa que utilice dos arrays para almacenar los nombres y las notas de los alumnos de una clase.

- En el programa principal se definiran los arrays (notas y nombres) con un tamaño de 10 elementos, y se introducirá su contenido.
La nota deberá ser un valor entre -1 y 10.
Si el valor es -1 significará que el alumno no se ha presentado.

- Confeccionar un menu que deje escoger entre las siguientes opciones:
. MEDIA: será la media de las notas de los alumnos que se han presentado.
. APROBADOS: escribir el nombre de los alumnos que hayan aprobado
. FIN: terminar el programa

Las opciones del menu se programarán mediante funcione
Error de sintaxis
Por: Bersek
12/8/2011
En la sintaxis te falta agregar el famoso ';' al final de cada línea.
sobre el ;
22/9/2011
Hola,
Javascript no necesita el mencionado punto y coma ";" al final de cada sentencia. Lenguajes como Java o C sí que lo requieren de manera obligatoria, pero en Javascript es meramente opcional.
Así que no hay necesidad de corregir nada en este artículo.

Manuales relacionados
Categorias relacionadas
El autor
Lectura recomendada
Compra este libro en Agapea, la librería urgente a domicilio.
Últimas noticias
Donaciones
Si piensas que te hemos ayudado y merecemos tu apoyo económico...