Este documento resume os principais métodos do objeto Array em JavaScript e apresenta exemplos de seu uso. Além disso, introduz o conceito de arrays multidimensionais para armazenar dados complexos, como listas de objetos com múltiplos atributos.
A Congregação de Jesus e Maria, conhecida também como os Eudistas, foi fundad...
T13_LM3: Arrays (2013-2014)
1. JavaScript: métodos Array (cont.) + arrays^n
Carlos Santos
LabMM 3 - NTC - DeCA - UA
Aula 13, 30-10-2013
2. JavaScript: objeto Array: métodos
• Os mais comuns... mas existem mais!
Método
concat()
join()
pop()
push()
reverse()
Descrição
Joins two or more arrays, and returns a copy of the joined arrays
Joins all elements of an array into a string
Removes the last element of an array, and returns that element
Adds new elements to the end of an array, and returns the new length
Reverses the order of the elements in an array
shift()
Removes the first element of an array, and returns that element
slice()
Selects a part of an array, and returns the new array
sort()
Sorts the elements of an array
splice
Adds/Removes elements from an array
toString()
unshift()
Converts an array to a string, and returns the result
Adds new elements to the beginning of an array, and returns the new length
http://www.w3schools.com/jsref/jsref_obj_array.asp
13. Estruturas de dados ainda mais complexas :)
• E se um elemento de um array não for um elemento de tipo simples?
• Exemplo: O Nelo não pode guardar só o nome das suas gajas. Ele precisa
guardar o número de telemóvel e o email!
var gajasNelo = new Array();!
gajasNelo[0] = “Asdrubal, 961111111, asdrubal@gmail.com”;!
gajasNelo[1] = “Porfirio, 931111111, porfirio@sapo.pt”;!
gajasNelo[2] = “Zacarias, 911111111, zacarias@hotmail.pt”;
14. Problemas com solução anterior?
• Os elementos não são unidades de informação
• Logo, o acesso a unidades de informação não pode ser realizado de uma
forma simples e sistemática
• “Voltamos ao problema de misturar alhos com bugalhos!”
!
• Então como resolver?
• Pista para a nova solução: “Cada elemento de um array pode ter
associado um tipo de dados complexo”
18. Arrays bidimensionais: declaração
var gajasNelo = new Array();!
gajasNelo[0] = new Array("Asdrubal","961111111","asdrubal@gmail.com");!
gajasNelo[1] = new Array("Porfirio","931111111","porfirio@sapo.pt");!
gajasNelo[2] = new Array("Zacarias","911111111","zacarias@hotmail.com");!
!
// Outra possibilidade!
var gajasNelo = new Array();!
gajasNelo[0] = ["Asdrubal","961111111","asdrubal@gmail.com"];!
gajasNelo[1] = ["Porfirio","931111111","porfirio@sapo.pt"];!
gajasNelo[2] = ["Zacarias","911111111","zacarias@hotmail.com"];
19. Arrays bidimensionais: declaração
// E ainda outra possibilidade!
var gajasNelo = new Array();!
gajasNelo[0] = new Array();!
gajasNelo[0][0] = "Asdrubal";!
gajasNelo[0][1] = "961111111";!
gajasNelo[0][2] = "asdrubal@gmail.com";!
gajasNelo[1] = new Array();!
gajasNelo[1][0] = "Porfirio";!
...
21. Arrays multidimensionais
• Os princípios aplicados na criação de um array bidimensional são válidos
para um array de qualquer dimensão;
• num array bidimensional, cada elemento pode ser também um array,
resultando num array tridimensional;
• e esta lógica pode continuar a ser aplicada...
• Raramente se recorre a arrays com mais do que 3 dimensões porque
começam a ser demasiado complexos de visualizar e são de difícil
manutenção.
22. Arrays bidimensionais: exemplo
var tabuada = new Array();!
for (var linha=1; linha<=10;linha++){!
tabuada[linha] = new Array();!
for (var coluna = 1; coluna<=10; coluna++){!
tabuada[linha][coluna]=linha*coluna;!
}!
}!
!
alert(tabuada[5][5]); // ??!
alert(tabuada[0][5]); // ??