1. Comprender las matrices
Una matriz es una colección de ciertos tipos de datos. El tipo de datos puede ser un número entero, una cadena o incluso un objeto.
Javascript no admite matrices multidimensionales, pero debido a que las matrices pueden contener objetos (una matriz también es un objeto), las matrices pueden lograr funciones similares a las matrices multidimensionales al anidarse entre sí.
1.1 Definir matriz
Declarar una matriz con 10 elementos
var a = nueva matriz (10);
En este momento, se ha abierto el espacio de memoria para a, que contiene 10 elementos. Utilice el nombre de la matriz más [subíndice] para llamarlo, por ejemplo, a [2]. la llamada volverá indefinida.
El siguiente código define una matriz de variables y asigna valores.
var a = nueva matriz();
a[0] = 10;
a[1] = "aaa";
a[2] = 12,6;
Como se mencionó anteriormente, los objetos se pueden colocar en matrices, como el siguiente código
var a = nueva matriz();
a[0] = verdadero;
a[1] = document.getElementById("texto");
a[2] = {x:11, y:22};
a[3] = nueva matriz();
A las matrices se les pueden asignar valores directamente cuando se crean instancias, por ejemplo
var a = nueva matriz (1, 2, 3, 4, 5);
var b = [1, 2, 3, 4, 5];
Tanto a como b son matrices, pero b usa una declaración implícita para crear otra instancia. En este momento, si se usa alerta (a == b), aparecerá falso.
1.2 Matriz multidimensional
De hecho, Javascript no admite matrices multidimensionales. En asp, puede usar dim a(10,3) para definir matrices multidimensionales. En Javascript, si usa var a = new Array(10,3), an. Se informará un error. Pero como se mencionó anteriormente, las matrices pueden contener objetos, por lo que un elemento de la matriz se puede declarar como una matriz, por ejemplo.
var a = nueva matriz();
a[0] = nueva matriz();
a[0][0] = 1;
alert(a[0][0]); //Aparece 1
Asignar un valor al declarar
var a = nueva matriz ([1,2,3], [4,5,6], [7,8,9]);
var b = [[1,2,3], [4,5,6], [7,8,9]];
El efecto es el mismo: a utiliza creación de instancias regulares, b es una declaración implícita y el resultado es una matriz multidimensional.
1.3 literales de matriz
Realmente no sé cómo se llama esto en chino, ¿matriz de texto?
Hablando de matrices, tenemos que hablar de Array Literals. Las matrices son en realidad objetos especiales. Los objetos tienen propiedades y métodos únicos. Los valores y las llamadas se obtienen a través del nombre del objeto.property y object.method (), mientras que las matrices se obtienen a través de subíndices. Los valores y los Array Literals son muy similares a las matrices. Ambas son colecciones de un determinado tipo de datos. Sin embargo, Array Literals es fundamentalmente un objeto y su declaración y llamada son diferentes de las matrices.
var aa = nuevo Objeto();
aa.x = "gato";
aa.y = "soleado";
alert(aa.x); // gato emergente
Cree un objeto simple. Generalmente, la llamada se realiza a través de aa.x. Si se usa como literal de matriz, también aparecerá alerta (aa ["x"]).
var a = {x:"gato", y:"soleado"};
alert(a["y"]); //aparece soleado
Aquí hay otra forma de crear un objeto, el resultado es el mismo.