SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
JavaScript: métodos Array (cont.) + arrays^n
Carlos Santos

LabMM 3 - NTC - DeCA - UA

Aula 13, 30-10-2013
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
Array: métodos: slice()
var fruits = ["Banana", "Orange", "Apple", "Mango"];!
document.write(fruits.slice(0,1) + "<br />");!
document.write(fruits.slice(1) + "<br />");!
document.write(fruits.slice(-2) + "<br />");!
document.write(fruits);!
!

// ??!
// ??!
// ??!
// ??
Array: métodos: slice()
var fruits = ["Banana", "Orange", "Apple", "Mango"];!
document.write(fruits.slice(0,1) + "<br />");!
document.write(fruits.slice(1) + "<br />");!
document.write(fruits.slice(-2) + "<br />");!
document.write(fruits);!
!

// Banana!
// Orange,Apple,Mango!
// Apple,Mango!
// Banana,Orange,Apple,Mango
Array: métodos: sort()
var fruits = ["Banana", "Orange", "Apple", "Mango"];!
document.write(fruits.sort());!
!

// ??
Array: métodos: sort()
var fruits = ["Banana", "Orange", "Apple", "Mango"];!
document.write(fruits.sort());!
!

// Apple,Banana,Mango,Orange
Array: métodos: splice()
var fruits = ["Banana", "Orange", "Apple", "Mango"];!
document.write("Added: " + fruits.splice(2,0,"Lemon") +
"<br />");!
document.write(fruits);!
!

// Added:!
// Banana,Orange,Lemon,Apple,Mango!
Array: métodos: splice()
var fruits = ["Banana", "Orange", "Apple", "Mango"];!
document.write("Removed: " + fruits.splice(2,1,"Lemon") +
"<br />");!
document.write(fruits);!
!

// Removed: Apple!
// Banana,Orange,Lemon,Mango!
Array: métodos: splice()
var fruits = ["Banana", "Orange", "Apple", "Mango"];!
document.write("Removed: " + fruits.splice(2,2,"Lemon") +
"<br />");!
document.write(fruits);!
!

// Removed: Apple,Mango!
// Banana,Orange,Lemon!
Array: métodos: toString()
var fruits = ["Banana", "Orange", "Apple", "Mango"];!
document.write(fruits.toString());!
!

// Banana,Orange,Apple,Mango!
Array: métodos: unshift()
var fruits = ["Banana", "Orange", "Apple", "Mango"];!
document.write(fruits.unshift("Kiwi") + "<br />");!
document.write(fruits.unshift("Lemon","Pineapple") +
"<br />");!
document.write(fruits);!
!

// ??!
// ??!
// ??!
Array: métodos: unshift()
var fruits = ["Banana", "Orange", "Apple", "Mango"];!
document.write(fruits.unshift("Kiwi") + "<br />");!
document.write(fruits.unshift("Lemon","Pineapple") +
"<br />");!
document.write(fruits);!
!

// 5!
// 7!
// Lemon,Pineapple,Kiwi,Banana,Orange,Apple,Mango!
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”;
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”
Arrays bidimensionais
gajasNelo
nome

telefone

email

0

Asdrubal

961111111

asdrubal@gmail.com

1

Porfirio

931111111

porfirio@sapo.pt

2

Zacarias

911111111

zacarias@hotmail.com
Arrays bidimensionais
gajasNelo
0

1

2

0

“Asdrubal”

“961111111”

“asdrubal@gmail.com”

1

“Porfirio”

“931111111”

“porfirio@sapo.pt”

2

“Zacarias”

“911111111”

“zacarias@hotmail.com”
Arrays bidimensionais
gajasNelo
0

0
“Asdrubal"

0
1

“Porfirio”

0
2

“Zacarias”

1
“961111111”

1
“931111111”

1
“911111111”

2
“asdrubal@gmail.com”

2
“porfirio@sapo.pt”

2
“zacarias@hotmail.com”
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"];
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";!
...
Arrays bidimensionais
gajasNelo
0

1

2

0

“Asdrubal"

“961111111”

“asdrubal@gmail.com”

1

“Porfirio”

“931111111”

“porfirio@sapo.pt”

2

“Zacarias”

“911111111”

“zacarias@hotmail.com”

alert(gajasNelo[1]); // ??!
alert(gajasNelo[0][2]); // ??!
alert(gajasNelo[2][1]); // ??!
gajasNelo[1][0] = “Marcão”; // ??!
gajasNelo[2][2] = gajasNelo[1][2]; // ??!
alert(gajasNelo.length); // ??!
alert(gajasNelo[1].length); // ??
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.
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]); // ??

Más contenido relacionado

Más de Carlos Santos

AVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunosAVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunos
Carlos Santos
 
SAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoSAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativo
Carlos Santos
 
T20_LM3: APIs e Scoreoid
T20_LM3: APIs e ScoreoidT20_LM3: APIs e Scoreoid
T20_LM3: APIs e Scoreoid
Carlos Santos
 
T19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificaçãoT19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificação
Carlos Santos
 
T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)
Carlos Santos
 
T15_T16_LM3: Mais objetos do Javascript (2013-2014)
T15_T16_LM3: Mais objetos do Javascript (2013-2014)T15_T16_LM3: Mais objetos do Javascript (2013-2014)
T15_T16_LM3: Mais objetos do Javascript (2013-2014)
Carlos Santos
 

Más de Carlos Santos (20)

Is AI the Spice of our future?
Is AI the Spice of our future?Is AI the Spice of our future?
Is AI the Spice of our future?
 
Mentoria entre pares de estudantes para estudantes
Mentoria entre pares de estudantes para estudantesMentoria entre pares de estudantes para estudantes
Mentoria entre pares de estudantes para estudantes
 
1º Encontro Científico TCEdu
1º Encontro Científico TCEdu1º Encontro Científico TCEdu
1º Encontro Científico TCEdu
 
Tecnologias da Comunicação em Educação 2018: Aula inicial
Tecnologias da Comunicação em Educação 2018: Aula inicialTecnologias da Comunicação em Educação 2018: Aula inicial
Tecnologias da Comunicação em Educação 2018: Aula inicial
 
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunosAVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
AVILA Crew - Uma experiência de tutoria (com jogos) de alunos para alunos
 
AVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunosAVILA Crew – Uma experiência de tutoria de alunos para alunos
AVILA Crew – Uma experiência de tutoria de alunos para alunos
 
chmod 777 education
chmod 777 educationchmod 777 education
chmod 777 education
 
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
Mestrado em Comunicação Multimédia da Universidade de Aveiro - Sessão de acol...
 
Tecnologias da Comunicação em Educação: trabalho prático
Tecnologias da Comunicação em Educação: trabalho práticoTecnologias da Comunicação em Educação: trabalho prático
Tecnologias da Comunicação em Educação: trabalho prático
 
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
 
chmod 777 education
chmod 777 educationchmod 777 education
chmod 777 education
 
SAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning EnvironmentSAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning Environment
 
Repensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO CampusRepensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO Campus
 
A technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus projectA technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus project
 
SAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoSAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativo
 
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCARepensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
 
T20_LM3: APIs e Scoreoid
T20_LM3: APIs e ScoreoidT20_LM3: APIs e Scoreoid
T20_LM3: APIs e Scoreoid
 
T19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificaçãoT19_LM3: Projeto final e documentação de planificação
T19_LM3: Projeto final e documentação de planificação
 
T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)T17_LM3: Erros/Debug (2013-2014)
T17_LM3: Erros/Debug (2013-2014)
 
T15_T16_LM3: Mais objetos do Javascript (2013-2014)
T15_T16_LM3: Mais objetos do Javascript (2013-2014)T15_T16_LM3: Mais objetos do Javascript (2013-2014)
T15_T16_LM3: Mais objetos do Javascript (2013-2014)
 

Último

atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
Autonoma
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
azulassessoria9
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
PatriciaCaetano18
 
Sistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturasSistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturas
rfmbrandao
 
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
azulassessoria9
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemática
sh5kpmr7w7
 

Último (20)

atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdfMESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
 
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
 
Pesquisa Ação René Barbier Livro acadêmico
Pesquisa Ação René Barbier Livro  acadêmicoPesquisa Ação René Barbier Livro  acadêmico
Pesquisa Ação René Barbier Livro acadêmico
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
 
aprendizagem significatica, teórico David Ausubel
aprendizagem significatica, teórico David Ausubelaprendizagem significatica, teórico David Ausubel
aprendizagem significatica, teórico David Ausubel
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)
 
O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptx
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
 
Sistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturasSistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturas
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemática
 

T13_LM3: Arrays (2013-2014)