Las matrices en JScript son dispersas. Es decir, si tiene una matriz con tres elementos, numerados como 0, 1 y 2, puede crear un elemento 50 sin preocuparse por los elementos que van del 3 al 49. Si la matriz tiene una variable de longitud automática (consulte Objetos intrínsecos para obtener una explicación acerca del control automático de la longitud de una matriz), la longitud de la variable tendría el valor 51, en lugar de 4. Se pueden crear matrices en las que no haya espacios vacíos en la numeración de los elementos, pero no es necesario.
En JScript, los objetos y las matrices son casi idénticos. Las dos diferencias principales estriban en que los objetos normales no tienen una propiedad de longitud automática y las matrices no tienen las propiedades y métodos de un objeto.
Debe hacer referencia a las matrices mediante el uso de corchetes "[]". Los corchetes encierran un valor numérico o una expresión que se evalúa como un número entero. En el siguiente ejemplo se supone que la variable numEntr se define en alguna parte de la secuencia de comandos y se le asigna un valor.
laLista = libretaDirecciones[numEntr]; laPrimeraLinea = laLista [1];
Por lo general, el operador punto "." se usa para tener acceso a las propiedades de un objeto. Por ejemplo:
miObjeto.unaPropiedad
En este caso el nombre de la propiedad es un identificador. También puede tener acceso a las propiedades de un objeto mediante el operador índice "[]". En este caso, el objeto se trata como una matriz asociativa. Una matriz asociativa es una estructura de datos que permite asignar dinámicamente valores de datos arbitrarios con cadenas arbitrarias. Por ejemplo:
miObjeto["unaPropiedad"] // Como en el ejemplo anterior.
Aunque el uso del operador de índice se suele asociar con el acceso a elementos de una matriz, cuando se usa con objetos, el índice siempre es el nombre de la propiedad expresado como un literal de cadena.
Observe la evidente diferencia entre las dos maneras de tener acceso a las propiedades de objeto.
Operador | El nombre de la propiedad se trata como | Lo que indica que el nombre de la propiedad |
---|---|---|
Punto "." | un identificador | no puede tratarse como datos |
Índice "[]" | un literal de cadena | puede tratarse como datos |
Esta diferencia resulta útil cuando no se sabe cuáles serán los nombres de propiedad hasta el momento de la ejecución (por ejemplo, cuando se construyen objetos basados en información escrita por el usuario). Para extraer todas las propiedades de una matriz asociativa, debe usar el bucle for … in.
Ayuda de Javascript y Vbscript para Javascripts.astalaweb.com. |