1. Compreender matrizes
Uma matriz é uma coleção de certos tipos de dados. O tipo de dados pode ser um número inteiro, uma string ou até mesmo um objeto.
Javascript não oferece suporte a arrays multidimensionais, mas como os arrays podem conter objetos (um array também é um objeto), os arrays podem realizar funções semelhantes aos arrays multidimensionais aninhando-se uns aos outros.
1.1 Definir matriz
Declare um array com 10 elementos
var a = novo Array(10);
Neste momento, o espaço de memória foi aberto para a, contendo 10 elementos. Use o nome do array mais [subscrito] para chamá-lo, por exemplo, a[2]. a chamada retornará indefinida.
O código a seguir define uma matriz variável e atribui valores
var a = new Array();
uma[0] = 10;
a[1] = "aaa";
a[2] = 12,6;
Conforme mencionado acima, os objetos podem ser colocados em matrizes, como o código a seguir
var a = new Array();
a[0] = verdadeiro;
a[1] = document.getElementById("texto");
uma[2] = {x:11, y:22};
a[3] = nova Matriz();
Matrizes podem receber valores diretamente quando instanciadas, por exemplo
var a = novo Array(1, 2, 3, 4, 5);
var b = [1, 2, 3, 4, 5];
Tanto a quanto b são arrays, mas b usa uma declaração implícita para criar outra instância. Neste momento, se alert(a==b) for usado, false aparecerá.
1.2 Matriz multidimensional
Na verdade, Javascript não suporta arrays multidimensionais. Em asp, você pode usar dim a(10,3) para definir arrays multidimensionais, se você usar var a = new Array(10,3), an. o erro será relatado. Mas, como mencionado antes, arrays pode conter objetos, portanto, um elemento no array pode ser declarado como um array, por exemplo.
var a = new Array();
a[0] = nova Matriz();
a[0][0] = 1;
alerta(a[0][0]); //Aparece 1
Atribuir um valor ao declarar
var a = new Array([1,2,3], [4,5,6], [7,8,9]);
var b = [[1,2,3], [4,5,6], [7,8,9]];
O efeito é o mesmo, a usa instanciação regular, b é uma declaração implícita e o resultado é uma matriz multidimensional.
1.3 Literais de array
Eu realmente não sei como isso se chama em chinês, matriz de texto?
Falando em arrays, temos que falar sobre Array Literais são na verdade objetos especiais que possuem propriedades e métodos únicos e as chamadas são obtidas por meio de object name.property e object.method(). Valores, Array Literals são muito semelhantes a arrays. Ambos são coleções de um determinado tipo de dados. No entanto, Array Literals é fundamentalmente um objeto e sua declaração e chamada são diferentes dos arrays.
var aa = novo Objeto();
aa.x = "gato";
aa.y = "ensolarado";
alerta(aa.x); //aparece gato
Crie um objeto simples. Geralmente, a chamada é feita por meio de aa.x. Se for usado como literais de array, alert(aa["x"]) também aparecerá cat.
var a = {x:"gato", y:"ensolarado"};
alert(a["y"]); //aparece ensolarado
Aqui está outra maneira de criar um objeto, o resultado é o mesmo