Como estamos vendo, as matrizes são bastante importantes em JavaScript e também na maioria dos idiomas de programação. Especificamente, já aprendemos a criar matrizes e usá-los em artigos anteriores do manual JavaScript. Mas ainda temos algumas coisas importantes para explicar, como matrizes multidimensionais.
Multidimensionais arrays são estruturas de dados que armazenam os valores em mais de uma dimensão. As matrizes que vimos até agora valores de loja em uma dimensão, portanto, para acessar posições que usamos apenas um índice. As matrizes 2-dimensionais salvam seus valores, para colocá-lo de alguma forma, em linhas e colunas e, portanto, precisaremos de dois índices para acessar cada uma das suas posições.
Em outras palavras, uma matriz multidimensional é como Um recipiente que economizou mais valores para cada posição, ou seja, como se os elementos da matriz fossem outras matrizes.
No JavaScript não há nenhum objeto multidimensinal de matriz autêntico. Para usar essas estruturas, podemos definir matrizes que, onde em cada uma de suas posições haverá outra matriz. Em nossos programas, podemos usar matrizes de qualquer dimensão, veremos abaixo como trabalhar com matrizes bidimensionais, que serão as mais comuns.
Neste exemplo, vamos criar um bidimensional array onde teremos em uma cidades secundária e, por outro, a temperatura média que ela faz em cada um durante os meses de inverno.
var temperaturas_medias_ciudad0 = new Array(3) temperaturas_medias_ciudad0 = 12 temperaturas_medias_ciudad0 = 10 temperaturas_medias_ciudad0 = 11 var temperaturas_medias_ciudad1 = new Array (3) temperaturas_medias_ciudad1 = 5 temperaturas_medias_ciudad1 = 0 temperaturas_medias_ciudad1 = 2 var temperaturas_medias_ciudad2 = new Array (3) temperaturas_medias_ciudad2 = 10 temperaturas_medias_ciudad2 = 8 temperaturas_medias_ciudad2 = 10
com as linhas anteriores Criou três matrizes de 1 dimensão e três elementos, como os que já conhecíamos. Agora vamos criar uma nova matriz de três elementos e vamos apresentar os matrizes criados anteriormente dentro de cada uma de suas caixas, com as quais teremos uma matriz de matrizes, isto é, uma matriz 2-dimensional.
Vemos que para introduzir a matriz inteira que se referimos sem parênteses ou suportes, mas apenas com o nome dele. As temperaturas da matriz é a nossa matriz bidirecional.
Também é interessante ver como uma turnê é executada por uma matriz bidimensional. Para isso, temos que fazer um loop que passe por cada uma das caixas de dois dimensões e dentro deles faça um novo passeio para cada uma de suas caixas internas. Ou seja, um passeio de uma matriz dentro de outro.
O método para fazer um tour dentro de outro é colocar um loop dentro de outro, que é chamado de loop aninhado. Neste exemplo, vamos colocar um loop para dentro de outro. Além disso, vamos escrever os resultados em uma tabela, que complicará o script um pouco, mas podemos ver como construir uma tabela do JavaScript como nós executamos a rota aninhada para o loop.
document.write("<table width=200 border=1 cellpadding=1 cellspacing=1>"); for (i=0;i<temperaturas_cuidades.length;i++){ document.write("<tr>") document.write("<td><b>Ciudad " + i + "</b></td>") for (j=0;j<temperaturas_cuidades.length;j++){ document.write("<td>" + temperaturas_cuidades + "</td>") } document.write("</tr>") } document.write("</table>")
Este script é um pouco mais complexo do que os vistos anteriormente. A primeira ação é escrever o cabeçalho da tabela, ou seja, o rótulo <TABLE>
junto com seus atributos. Com o primeiro loop, realizamos um passeio para a primeira dimensão da matriz e usamos a variável i para manter a conta da posição atual. Para cada iteração deste loop, escrevemos uma linha e para iniciar a linha, abrimos a etiqueta <TR>
. Além disso, escrevemos em uma caixa o número da cidade que estamos viajando naquele momento. Posteriormente, colocamos outro loop que está passando por cada uma das caixas de matriz em sua segunda dimensão e escrevemos a temperatura da cidade atual em cada um dos meses, dentro de sua etiqueta <TD>
. Uma vez que o segundo loop termina, as três temperaturas foram impressas e, portanto, a linha é concluída. O primeiro loop continua a revogar até que todas as cidades sejam impressas e uma vez terminadas, fechamos a tabela.
Podemos ver o exemplo em execução e examinar o código de todo o script
Inicialização de matrizes
para terminar com o tema das matrizes, veremos uma maneira de inicializar seus valores enquanto nós o declaramos, para que possamos executar de maneira mais rápida Processo de introdução de valores em cada uma das posições de matriz.
O método normal de criar uma matriz que vimos que foi através do objeto de matriz, colocando o número de caixas de matriz entre parênteses ou não colocar nada, para que a matriz seja criada sem qualquer posição. Para inserir valores para uma matriz se torna o mesmo, mas colocando entre os parênteses os valores com os quais queremos preencher as caixas separadas por um coma. Vamos vê-lo com um exemplo que cria uma matriz com os nomes dos dias da semana.
var diasSemana = new Array("Lunes","Martes","Miércoles,","Jueves","Viernes","Sábado","Domingo")
A matriz é criada com 7 caixas, de 0 a 6 e em cada caixa é escrito no dia da semana correspondente (entre aspas porque é um texto).
Agora vamos ver algo mais complicado, é sobre declarar a matriz bidimensional que usamos antes para temperaturas das cidades nos meses em uma única linha, entrando nos valores de cada vez.
var temperaturas_cuidades = new Array(new Array (12,10,11), new Array(5,0,2),new Array(10,8,10))
No exemplo, no exemplo, entramos em cada caixa de array outra Array que tem como valores as temperaturas de uma cidade em cada mês.
JavaScript ainda tem uma maneira mais resumida do que acabamos de ver, que explicamos no primeiro artigo em que tratamos os arrays. Para isso, simplesmente escrevemos entre colchetes os dados da matriz que estamos criando. Para terminar, mostraremos um exemplo sobre como usar essa sintaxe para declarar matrizes de mais de uma dimensão.
var arrayMuchasDimensiones = , , "acabo"], 2, 5];
Neste exemplo, criamos um uniforme Array, porque continha caixas com conteúdo de simples simples e outros com conteúdo da cadeia e outros que são outros arrays. Poderíamos acessar algumas de suas caixas e mostrar seus valores desta maneira:
alert (arrayMuchasDimensiones)alert (arrayMuchasDimensiones)alert (arrayMuchasDimensiones)
com isso chegamos no final dos itens que lidam com Matrizes em JavaScript e agora podemos continuar com uma pequena pausa e conselhos que virão bem para melhorar nosso relacionamento com essa linguagem de programação.