SlideShare uma empresa Scribd logo
1 de 25
Baixar para ler offline
JavaScript: Objecto Array() e arrays^n
Carlos Santos
LabMM 3 - NTC - DeCA - UA
Aula 12, 26-10-2012
Arrays: operações base: leitura

• Escrita

 • var elemento = nomeArray[índice];

• Exemplos

 • var letraEscolhida = arrayLetras[1]; //??      “a”
 • alert(arrayLetras[0]); //??                    “x”
                                                  “c”
 • arrayLetras[1] = arrayLetras[2]; //??
                                                  “d”
                                               undefined

                                                  “z”
De regresso às resmas de gajas do Nelo

• Criar um array para ajudar o Nelo a guardar o nome das gajas atuais:
  Asdrubal, Porfirio e Zacarias:

 var gajasNelo = new Array(“Asdrubal”,“Porfirio”,“Zacarias”);
                                                          0    “Asdrubal”
                                                          1     “Porfirio”
                                                          2     “Zacarias”

• O Nelo chateou-se com o Asdrubal e arranjou logo o “Jair” para o substituir.
  Pelo meio ainda ficou com o “Marcão”:

 gajasNelo[0] = “Jair”;
                                     0         “Jair”
 gajasNelo[3] = “Marcão”;            1       “Porfirio”
                                     2       “Zacarias”
                                     3       “Marcão”
De volta às resmas de gajas do Nelo

• O Nelo é muito esquecido e por isso temos de gerar uma mensagem de
  alerta que diga:

     • “Nelo, mulher, as tuas gajas são: ..., ..., ..., ...”


 var msg = “Nelo, mulher, as tuas gajas são: “;
 msg = msg + gajasNelo[0] + “, “;                              0     “Jair”
 msg = msg + gajasNelo[1] + “, “;                              1   “Porfirio”
 msg = msg + gajasNelo[2] + “, “;                              2   “Zacarias”
 msg = msg + gajasNelo[3];                                     3   “Marcão”
 alert (msg); //??
Sistematizar o acesso a um array

 var msg = “Nelo, mulher, as tuas gajas são: “;
 msg = msg + gajasNelo[0] + “, “;
 msg = msg + gajasNelo[1] + “, “;
 msg = msg + gajasNelo[2] + “, “;
 msg = msg + gajasNelo[3];
 alert (msg); //??


 // Versão com ciclo for
 var msg = “Nelo, mulher, as tuas gajas são: “;
 for (cont = 0; cont <=3; cont++) {
     msg = msg + gajasNelo[cont] + “, “;
 }
 alert (msg); // Será que o resultado final é exatamente igual?
Estrutura de repetição: for-in
    variável que no decorrer da
   execução do ciclo vai tomar
   todos os valores dos índices
              do objeto           array que se pretende iterar
                                      todos os elementos


   for ( index in nomeArray )
   {
     // código a executar
   }
Estrutura de repetição: for-in (exemplo)

 var msg = “Nelo, mulher, as tuas gajas são: “;
 for (cont = 0; cont <= gajasNelo.length - 1; cont++) {
     msg = msg + gajasNelo[cont] + “, “;
 }
 alert (msg);


 // versão com for-in
 var gajasNelo = new Array("Jair", "Marcolino", "Marco");
 for (var indexGaja in gajasNelo) {
     msg = msg + gajasNelo[indexGaja] + ", ";
 }
 alert (msg);
Informação e métodos úteis num Array()

• Quantos elementos tem o array neste momento?

• Como adicionar um elemento no final de um array?

• Como adicionar um elemento no início de um array?

• Como apagar um elemento do array e não deixar um espaço vazio?

• ...
Objetos
no dia-a-dia
Um objeto é uma “coisa”
definida por um conjunto de:

propriedades
- modelo
- espaçoDeArmazenamento

métodos/funções
- ligar(nr. telefone)
- play(album)
Objetos em programação (versão light)

• são também uma “coisa” definida por um conjunto de propriedades e
  métodos que podem ser reutilizados livremente na execução de um
  programa.

• as características de um objeto são definidas pela sua classe, que podem
  ser:

  • built-in

  • user defined

• a instanciação de um novo objeto é conseguida através da invocação do
  operador new.
Operador new

• Instanciação de um array

 • var nomeArray = new Array();




      classe Array()               objeto nomeArray

    propriedades Array       new
                                   propriedades Array

       métodos Array                 métodos Array
JavaScript: objeto Array: propriedades

• length: devolve o número atual de elementos de um array

 // Exemplo: Versão alterada com ciclo for

    var msg = “Nelo, mulher, as tuas gajas são: “;
    for (cont = 0; cont <= gajasNelo.length - 1; cont++) {
        msg = msg + gajasNelo[cont] + “, “;
    }
    alert (msg);


    0        “Jair”
    1       “Porfirio”
                           gajasNelo.length -> 4
    2      “Zacarias”
    3       “Marcão”
JavaScript: objeto Array: métodos

• Os mais comuns... mas existem mais!
    Método                                        Descrição
   concat()     Joins two or more arrays, and returns a copy of the joined arrays
    join()      Joins all elements of an array into a string
     pop()      Removes the last element of an array, and returns that element
    push()      Adds new elements to the end of an array, and returns the new length
  reverse()     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()    Converts an array to a string, and returns the result
  unshift()     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: concat()

 var parents = ["Jani", "Tove"];
 var children = ["Cecilie", "Lone"];
 var family = parents.concat(children);
 document.write(family);
 // ??


 var parents = ["Jani", "Tove"];
 var brothers = ["Stale", "Kai Jim", "Borge"];
 var children = ["Cecilie", "Lone"];
 var family = parents.concat(brothers, children);
 document.write(family);
 // ??


                                   Os exemplos desta secção são retirados do w3schools
Array: métodos: concat()

 var parents = ["Jani", "Tove"];
 var children = ["Cecilie", "Lone"];
 var family = parents.concat(children);
 document.write(family);
 // Jani,Tove,Cecilie,Lone


 var parents = ["Jani", "Tove"];
 var brothers = ["Stale", "Kai Jim", "Borge"];
 var children = ["Cecilie", "Lone"];
 var family = parents.concat(brothers, children);
 document.write(family);
 // Jani,Tove,Stale,Kai Jim,Borge,Cecilie,Lone
Array: métodos: join()

 var fruits = ["Banana", "Orange", "Apple", "Mango"];
 document.write(fruits.join() + "<br />");
 document.write(fruits.join("+") + "<br />");
 document.write(fruits.join(" and "));


 // ??
 // ??
 // ??
Array: métodos: join()

 var fruits = ["Banana", "Orange", "Apple", "Mango"];
 document.write(fruits.join() + "<br />");
 document.write(fruits.join("+") + "<br />");
 document.write(fruits.join(" and "));


 // Banana,Orange,Apple,Mango
 // Banana+Orange+Apple+Mango
 // Banana and Orange and Apple and Mango
Array: métodos: pop()

 var fruits = ["Banana", "Orange", "Apple", "Mango"];
 document.write(fruits.pop() + "<br />");
 document.write(fruits + "<br />");
 document.write(fruits.pop() + "<br />");
 document.write(fruits);


 // ??
 // ??
 // ??
 // ??
Array: métodos: pop()

 var fruits = ["Banana", "Orange", "Apple", "Mango"];
 document.write(fruits.pop() + "<br />");
 document.write(fruits + "<br />");
 document.write(fruits.pop() + "<br />");
 document.write(fruits);


 // Mango
 // Banana,Orange,Apple
 // Apple
 // Banana,Orange
Array: métodos: push()

 var fruits = ["Banana", "Orange", "Apple", "Mango"];
 document.write(fruits.push("Kiwi") + "<br />");
 document.write(fruits.push("Lemon","Pineapple")+"<br />");
 document.write(fruits);


 // ??
 // ??
 // ??
Array: métodos: push()

 var fruits = ["Banana", "Orange", "Apple", "Mango"];
 document.write(fruits.push("Kiwi") + "<br />");
 document.write(fruits.push("Lemon","Pineapple")+"<br />");
 document.write(fruits);


 // 5
 // 7
 // Banana,Orange,Apple,Mango,Kiwi,Lemon,Pineapple
Array: métodos: reverse()

 var fruits = ["Banana", "Orange", "Apple", "Mango"];
 document.write(fruits.reverse());


 // ??
Array: métodos: reverse()

 var fruits = ["Banana", "Orange", "Apple", "Mango"];
 document.write(fruits.reverse());


 // Mango,Apple,Orange,Banana
Array: métodos: shift()

 var fruits = ["Banana", "Orange", "Apple", "Mango"];
 document.write(fruits.shift() + "<br />");
 document.write(fruits + "<br />");
 document.write(fruits.shift() + "<br />");
 document.write(fruits);


 // ??
 // ??
 // ??
 // ??
Array: métodos: shift()

 var fruits = ["Banana", "Orange", "Apple", "Mango"];
 document.write(fruits.shift() + "<br />");
 document.write(fruits + "<br />");
 document.write(fruits.shift() + "<br />");
 document.write(fruits);


 // Banana
 // Orange,Apple,Mango
 // Orange
 // Apple,Mango

Mais conteúdo relacionado

Mais procurados

Computação Científica com Python, Numpy e Scipy
Computação Científica com Python, Numpy e ScipyComputação Científica com Python, Numpy e Scipy
Computação Científica com Python, Numpy e ScipyMarcel Caraciolo
 
LabMM4 (T14 - 12/13) - Arrays
LabMM4 (T14 - 12/13) - ArraysLabMM4 (T14 - 12/13) - Arrays
LabMM4 (T14 - 12/13) - ArraysCarlos Santos
 
Iteráveis e geradores (versão RuPy)
Iteráveis e geradores (versão RuPy)Iteráveis e geradores (versão RuPy)
Iteráveis e geradores (versão RuPy)Luciano Ramalho
 
Perl Moderno, dia2
Perl Moderno, dia2Perl Moderno, dia2
Perl Moderno, dia2garux
 
Perl Moderno, dia5
Perl Moderno, dia5Perl Moderno, dia5
Perl Moderno, dia5garux
 
Kotlin: conhecendo features de uma linguagem moderna
Kotlin: conhecendo features de uma linguagem modernaKotlin: conhecendo features de uma linguagem moderna
Kotlin: conhecendo features de uma linguagem modernaFabrício Rissetto
 
Orientação a objetos em Python (compacto)
Orientação a objetos em Python (compacto)Orientação a objetos em Python (compacto)
Orientação a objetos em Python (compacto)Luciano Ramalho
 
Lazy Evaluation em Scala
Lazy Evaluation em ScalaLazy Evaluation em Scala
Lazy Evaluation em Scalapmatiello
 
Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)Luciano Ramalho
 
Perl Moderno, dia4
Perl Moderno, dia4Perl Moderno, dia4
Perl Moderno, dia4garux
 
Objetos Pythonicos - compacto
Objetos Pythonicos - compactoObjetos Pythonicos - compacto
Objetos Pythonicos - compactoLuciano Ramalho
 
Revisão de Classes e arquivos .java - Preparatório Certificação - OCAJP7 - Au...
Revisão de Classes e arquivos .java - Preparatório Certificação - OCAJP7 - Au...Revisão de Classes e arquivos .java - Preparatório Certificação - OCAJP7 - Au...
Revisão de Classes e arquivos .java - Preparatório Certificação - OCAJP7 - Au...Paulo Henrique Lerbach Rodrigues
 

Mais procurados (20)

Computação Científica com Python, Numpy e Scipy
Computação Científica com Python, Numpy e ScipyComputação Científica com Python, Numpy e Scipy
Computação Científica com Python, Numpy e Scipy
 
LabMM4 (T14 - 12/13) - Arrays
LabMM4 (T14 - 12/13) - ArraysLabMM4 (T14 - 12/13) - Arrays
LabMM4 (T14 - 12/13) - Arrays
 
Iteráveis e geradores (versão RuPy)
Iteráveis e geradores (versão RuPy)Iteráveis e geradores (versão RuPy)
Iteráveis e geradores (versão RuPy)
 
PHP Básico - Parte 3
PHP Básico - Parte 3PHP Básico - Parte 3
PHP Básico - Parte 3
 
Aprendendo ruby
Aprendendo rubyAprendendo ruby
Aprendendo ruby
 
Perl Moderno, dia2
Perl Moderno, dia2Perl Moderno, dia2
Perl Moderno, dia2
 
POO - 23 - Coleções da API do Java
POO -  23 - Coleções da API do Java POO -  23 - Coleções da API do Java
POO - 23 - Coleções da API do Java
 
SPL Datastructures
SPL DatastructuresSPL Datastructures
SPL Datastructures
 
Perl Moderno, dia5
Perl Moderno, dia5Perl Moderno, dia5
Perl Moderno, dia5
 
Kotlin: conhecendo features de uma linguagem moderna
Kotlin: conhecendo features de uma linguagem modernaKotlin: conhecendo features de uma linguagem moderna
Kotlin: conhecendo features de uma linguagem moderna
 
Python
PythonPython
Python
 
Orientação a objetos em Python (compacto)
Orientação a objetos em Python (compacto)Orientação a objetos em Python (compacto)
Orientação a objetos em Python (compacto)
 
Lazy Evaluation em Scala
Lazy Evaluation em ScalaLazy Evaluation em Scala
Lazy Evaluation em Scala
 
iOS 8 com swift
iOS 8 com swiftiOS 8 com swift
iOS 8 com swift
 
NoSQL e MongoDB - ETEC
NoSQL e MongoDB - ETECNoSQL e MongoDB - ETEC
NoSQL e MongoDB - ETEC
 
Iteraveis e geradores
Iteraveis e geradoresIteraveis e geradores
Iteraveis e geradores
 
Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)
 
Perl Moderno, dia4
Perl Moderno, dia4Perl Moderno, dia4
Perl Moderno, dia4
 
Objetos Pythonicos - compacto
Objetos Pythonicos - compactoObjetos Pythonicos - compacto
Objetos Pythonicos - compacto
 
Revisão de Classes e arquivos .java - Preparatório Certificação - OCAJP7 - Au...
Revisão de Classes e arquivos .java - Preparatório Certificação - OCAJP7 - Au...Revisão de Classes e arquivos .java - Preparatório Certificação - OCAJP7 - Au...
Revisão de Classes e arquivos .java - Preparatório Certificação - OCAJP7 - Au...
 

Destaque

Social badges dynamics in institutional supported platforms
Social badges dynamics in institutional supported platformsSocial badges dynamics in institutional supported platforms
Social badges dynamics in institutional supported platformsCarlos Santos
 
Building SAPO Campus
Building SAPO CampusBuilding SAPO Campus
Building SAPO CampusCarlos Santos
 
Decentralized badges in educational contexts: the integration of OpenBadges i...
Decentralized badges in educational contexts: the integration of OpenBadges i...Decentralized badges in educational contexts: the integration of OpenBadges i...
Decentralized badges in educational contexts: the integration of OpenBadges i...Carlos Santos
 
(A16) LabMM3 - JavaScript - Erros
(A16) LabMM3 - JavaScript - Erros(A16) LabMM3 - JavaScript - Erros
(A16) LabMM3 - JavaScript - ErrosCarlos Santos
 
LabMM3 - Aula teórica 11
LabMM3 - Aula teórica 11LabMM3 - Aula teórica 11
LabMM3 - Aula teórica 11Carlos Santos
 
What's the role for institutions in PLEs? The case of SAPO Campus
What's the role for institutions in PLEs? The case of SAPO CampusWhat's the role for institutions in PLEs? The case of SAPO Campus
What's the role for institutions in PLEs? The case of SAPO CampusCarlos Santos
 
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 projectCarlos Santos
 
SAPO Campus: Sharing Without Limits
SAPO Campus: Sharing Without LimitsSAPO Campus: Sharing Without Limits
SAPO Campus: Sharing Without LimitsCarlos Santos
 
T13_LM3: Arrays (2013-2014)
T13_LM3: Arrays (2013-2014)T13_LM3: Arrays (2013-2014)
T13_LM3: Arrays (2013-2014)Carlos Santos
 
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 EnvironmentCarlos Santos
 

Destaque (12)

Social badges dynamics in institutional supported platforms
Social badges dynamics in institutional supported platformsSocial badges dynamics in institutional supported platforms
Social badges dynamics in institutional supported platforms
 
Building SAPO Campus
Building SAPO CampusBuilding SAPO Campus
Building SAPO Campus
 
Decentralized badges in educational contexts: the integration of OpenBadges i...
Decentralized badges in educational contexts: the integration of OpenBadges i...Decentralized badges in educational contexts: the integration of OpenBadges i...
Decentralized badges in educational contexts: the integration of OpenBadges i...
 
(A16) LabMM3 - JavaScript - Erros
(A16) LabMM3 - JavaScript - Erros(A16) LabMM3 - JavaScript - Erros
(A16) LabMM3 - JavaScript - Erros
 
Web APIs
Web APIsWeb APIs
Web APIs
 
LabMM3 - Aula teórica 11
LabMM3 - Aula teórica 11LabMM3 - Aula teórica 11
LabMM3 - Aula teórica 11
 
(A18) LabMM3 - Ajax
(A18) LabMM3 - Ajax(A18) LabMM3 - Ajax
(A18) LabMM3 - Ajax
 
What's the role for institutions in PLEs? The case of SAPO Campus
What's the role for institutions in PLEs? The case of SAPO CampusWhat's the role for institutions in PLEs? The case of SAPO Campus
What's the role for institutions in PLEs? The case of 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: Sharing Without Limits
SAPO Campus: Sharing Without LimitsSAPO Campus: Sharing Without Limits
SAPO Campus: Sharing Without Limits
 
T13_LM3: Arrays (2013-2014)
T13_LM3: Arrays (2013-2014)T13_LM3: Arrays (2013-2014)
T13_LM3: Arrays (2013-2014)
 
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
 

Semelhante a (A12) LabMM3 - JavaScript - Arrays

Semelhante a (A12) LabMM3 - JavaScript - Arrays (20)

(A13) LabMM3 - JavaScript - Arrays multidimensionais
(A13) LabMM3 - JavaScript - Arrays multidimensionais(A13) LabMM3 - JavaScript - Arrays multidimensionais
(A13) LabMM3 - JavaScript - Arrays multidimensionais
 
LabMM3 - Aula teórica 12
LabMM3 - Aula teórica 12LabMM3 - Aula teórica 12
LabMM3 - Aula teórica 12
 
Java script aula 04 - objeto array
Java script   aula 04 - objeto arrayJava script   aula 04 - objeto array
Java script aula 04 - objeto array
 
(A11b) LabMM3 - JavaScript - Arrays
(A11b) LabMM3 - JavaScript - Arrays(A11b) LabMM3 - JavaScript - Arrays
(A11b) LabMM3 - JavaScript - Arrays
 
[Curso Java Basico] Aulas 75-84: Strings e StringBuilder
[Curso Java Basico] Aulas 75-84: Strings e StringBuilder[Curso Java Basico] Aulas 75-84: Strings e StringBuilder
[Curso Java Basico] Aulas 75-84: Strings e StringBuilder
 
Programação aula002
Programação aula002Programação aula002
Programação aula002
 
Javafx Introdução
Javafx IntroduçãoJavafx Introdução
Javafx Introdução
 
Java básico - Módulo 06: Array
Java básico - Módulo 06: ArrayJava básico - Módulo 06: Array
Java básico - Módulo 06: Array
 
Java para iniciantes
Java para iniciantesJava para iniciantes
Java para iniciantes
 
Java8
Java8Java8
Java8
 
Curso de PHP - Arrays
Curso de PHP - ArraysCurso de PHP - Arrays
Curso de PHP - Arrays
 
Classe integer-float-byte-short-long-double
Classe integer-float-byte-short-long-doubleClasse integer-float-byte-short-long-double
Classe integer-float-byte-short-long-double
 
Java basico modulo_03
Java basico modulo_03Java basico modulo_03
Java basico modulo_03
 
PHP 5.3 - Arrays
PHP 5.3 - ArraysPHP 5.3 - Arrays
PHP 5.3 - Arrays
 
String e IO
String e IOString e IO
String e IO
 
PHP Arrays - Básico | Certificação
PHP Arrays - Básico | CertificaçãoPHP Arrays - Básico | Certificação
PHP Arrays - Básico | Certificação
 
Aula 02 - Curso PHP e MySQL
Aula 02 - Curso PHP e MySQLAula 02 - Curso PHP e MySQL
Aula 02 - Curso PHP e MySQL
 
Programação aula003
Programação aula003Programação aula003
Programação aula003
 
Android - Dicas de Performance
Android - Dicas de PerformanceAndroid - Dicas de Performance
Android - Dicas de Performance
 
Aula 01
Aula 01Aula 01
Aula 01
 

Mais de Carlos Santos

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?Carlos Santos
 
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 estudantesCarlos Santos
 
1º Encontro Científico TCEdu
1º Encontro Científico TCEdu1º Encontro Científico TCEdu
1º Encontro Científico TCEduCarlos Santos
 
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 inicialCarlos Santos
 
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 alunosCarlos 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 alunosCarlos Santos
 
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...Carlos Santos
 
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áticoCarlos Santos
 
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)Carlos Santos
 
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 CampusCarlos Santos
 
SAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoSAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoCarlos Santos
 
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 DeCACarlos Santos
 
T20_LM3: APIs e Scoreoid
T20_LM3: APIs e ScoreoidT20_LM3: APIs e Scoreoid
T20_LM3: APIs e ScoreoidCarlos 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çãoCarlos 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
 
T14_LM3: Animação (2013-2014)
T14_LM3: Animação (2013-2014)T14_LM3: Animação (2013-2014)
T14_LM3: Animação (2013-2014)Carlos Santos
 

Mais 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
 
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
 
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
 
T18_LM3: Ajax
T18_LM3: AjaxT18_LM3: Ajax
T18_LM3: Ajax
 
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)
 
T14_LM3: Animação (2013-2014)
T14_LM3: Animação (2013-2014)T14_LM3: Animação (2013-2014)
T14_LM3: Animação (2013-2014)
 

Último

Aula 1, 2 Bacterias Características e Morfologia.pptx
Aula 1, 2  Bacterias Características e Morfologia.pptxAula 1, 2  Bacterias Características e Morfologia.pptx
Aula 1, 2 Bacterias Características e Morfologia.pptxpamelacastro71
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.keislayyovera123
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditaduraAdryan Luiz
 
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBCRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBAline Santana
 
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdfO Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdfPastor Robson Colaço
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024Jeanoliveira597523
 
Bullying - Texto e cruzadinha
Bullying        -     Texto e cruzadinhaBullying        -     Texto e cruzadinha
Bullying - Texto e cruzadinhaMary Alvarenga
 
Programa de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasPrograma de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasCassio Meira Jr.
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfHenrique Pontes
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADOcarolinacespedes23
 
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
Regência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfRegência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfmirandadudu08
 
UFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfUFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfManuais Formação
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISVitor Vieira Vasconcelos
 
Caixa jogo da onça. para imprimir e jogar
Caixa jogo da onça. para imprimir e jogarCaixa jogo da onça. para imprimir e jogar
Caixa jogo da onça. para imprimir e jogarIedaGoethe
 
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptx
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptxApostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptx
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptxIsabelaRafael2
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasCassio Meira Jr.
 

Último (20)

Aula 1, 2 Bacterias Características e Morfologia.pptx
Aula 1, 2  Bacterias Características e Morfologia.pptxAula 1, 2  Bacterias Características e Morfologia.pptx
Aula 1, 2 Bacterias Características e Morfologia.pptx
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.
 
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditadura
 
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASBCRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
CRÔNICAS DE UMA TURMA - TURMA DE 9ºANO - EASB
 
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdfO Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
O Universo Cuckold - Compartilhando a Esposas Com Amigo.pdf
 
Em tempo de Quaresma .
Em tempo de Quaresma                            .Em tempo de Quaresma                            .
Em tempo de Quaresma .
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024
 
Bullying - Texto e cruzadinha
Bullying        -     Texto e cruzadinhaBullying        -     Texto e cruzadinha
Bullying - Texto e cruzadinha
 
Programa de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasPrograma de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades Motoras
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
 
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
activIDADES CUENTO  lobo esta  CUENTO CUARTO GRADOactivIDADES CUENTO  lobo esta  CUENTO CUARTO GRADO
activIDADES CUENTO lobo esta CUENTO CUARTO GRADO
 
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
HORA DO CONTO4_BECRE D. CARLOS I_2023_2024
 
Regência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfRegência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdf
 
UFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfUFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdf
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGIS
 
Caixa jogo da onça. para imprimir e jogar
Caixa jogo da onça. para imprimir e jogarCaixa jogo da onça. para imprimir e jogar
Caixa jogo da onça. para imprimir e jogar
 
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptx
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptxApostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptx
Apostila da CONQUISTA_ para o 6ANO_LP_UNI1.pptx
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e Específicas
 

(A12) LabMM3 - JavaScript - Arrays

  • 1. JavaScript: Objecto Array() e arrays^n Carlos Santos LabMM 3 - NTC - DeCA - UA Aula 12, 26-10-2012
  • 2. Arrays: operações base: leitura • Escrita • var elemento = nomeArray[índice]; • Exemplos • var letraEscolhida = arrayLetras[1]; //?? “a” • alert(arrayLetras[0]); //?? “x” “c” • arrayLetras[1] = arrayLetras[2]; //?? “d” undefined “z”
  • 3. De regresso às resmas de gajas do Nelo • Criar um array para ajudar o Nelo a guardar o nome das gajas atuais: Asdrubal, Porfirio e Zacarias: var gajasNelo = new Array(“Asdrubal”,“Porfirio”,“Zacarias”); 0 “Asdrubal” 1 “Porfirio” 2 “Zacarias” • O Nelo chateou-se com o Asdrubal e arranjou logo o “Jair” para o substituir. Pelo meio ainda ficou com o “Marcão”: gajasNelo[0] = “Jair”; 0 “Jair” gajasNelo[3] = “Marcão”; 1 “Porfirio” 2 “Zacarias” 3 “Marcão”
  • 4. De volta às resmas de gajas do Nelo • O Nelo é muito esquecido e por isso temos de gerar uma mensagem de alerta que diga: • “Nelo, mulher, as tuas gajas são: ..., ..., ..., ...” var msg = “Nelo, mulher, as tuas gajas são: “; msg = msg + gajasNelo[0] + “, “; 0 “Jair” msg = msg + gajasNelo[1] + “, “; 1 “Porfirio” msg = msg + gajasNelo[2] + “, “; 2 “Zacarias” msg = msg + gajasNelo[3]; 3 “Marcão” alert (msg); //??
  • 5. Sistematizar o acesso a um array var msg = “Nelo, mulher, as tuas gajas são: “; msg = msg + gajasNelo[0] + “, “; msg = msg + gajasNelo[1] + “, “; msg = msg + gajasNelo[2] + “, “; msg = msg + gajasNelo[3]; alert (msg); //?? // Versão com ciclo for var msg = “Nelo, mulher, as tuas gajas são: “; for (cont = 0; cont <=3; cont++) { msg = msg + gajasNelo[cont] + “, “; } alert (msg); // Será que o resultado final é exatamente igual?
  • 6. Estrutura de repetição: for-in variável que no decorrer da execução do ciclo vai tomar todos os valores dos índices do objeto array que se pretende iterar todos os elementos for ( index in nomeArray ) { // código a executar }
  • 7. Estrutura de repetição: for-in (exemplo) var msg = “Nelo, mulher, as tuas gajas são: “; for (cont = 0; cont <= gajasNelo.length - 1; cont++) { msg = msg + gajasNelo[cont] + “, “; } alert (msg); // versão com for-in var gajasNelo = new Array("Jair", "Marcolino", "Marco"); for (var indexGaja in gajasNelo) { msg = msg + gajasNelo[indexGaja] + ", "; } alert (msg);
  • 8. Informação e métodos úteis num Array() • Quantos elementos tem o array neste momento? • Como adicionar um elemento no final de um array? • Como adicionar um elemento no início de um array? • Como apagar um elemento do array e não deixar um espaço vazio? • ...
  • 9. Objetos no dia-a-dia Um objeto é uma “coisa” definida por um conjunto de: propriedades - modelo - espaçoDeArmazenamento métodos/funções - ligar(nr. telefone) - play(album)
  • 10. Objetos em programação (versão light) • são também uma “coisa” definida por um conjunto de propriedades e métodos que podem ser reutilizados livremente na execução de um programa. • as características de um objeto são definidas pela sua classe, que podem ser: • built-in • user defined • a instanciação de um novo objeto é conseguida através da invocação do operador new.
  • 11. Operador new • Instanciação de um array • var nomeArray = new Array(); classe Array() objeto nomeArray propriedades Array new propriedades Array métodos Array métodos Array
  • 12. JavaScript: objeto Array: propriedades • length: devolve o número atual de elementos de um array // Exemplo: Versão alterada com ciclo for var msg = “Nelo, mulher, as tuas gajas são: “; for (cont = 0; cont <= gajasNelo.length - 1; cont++) { msg = msg + gajasNelo[cont] + “, “; } alert (msg); 0 “Jair” 1 “Porfirio” gajasNelo.length -> 4 2 “Zacarias” 3 “Marcão”
  • 13. JavaScript: objeto Array: métodos • Os mais comuns... mas existem mais! Método Descrição concat() Joins two or more arrays, and returns a copy of the joined arrays join() Joins all elements of an array into a string pop() Removes the last element of an array, and returns that element push() Adds new elements to the end of an array, and returns the new length reverse() 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() Converts an array to a string, and returns the result unshift() Adds new elements to the beginning of an array, and returns the new length http://www.w3schools.com/jsref/jsref_obj_array.asp
  • 14. Array: métodos: concat() var parents = ["Jani", "Tove"]; var children = ["Cecilie", "Lone"]; var family = parents.concat(children); document.write(family); // ?? var parents = ["Jani", "Tove"]; var brothers = ["Stale", "Kai Jim", "Borge"]; var children = ["Cecilie", "Lone"]; var family = parents.concat(brothers, children); document.write(family); // ?? Os exemplos desta secção são retirados do w3schools
  • 15. Array: métodos: concat() var parents = ["Jani", "Tove"]; var children = ["Cecilie", "Lone"]; var family = parents.concat(children); document.write(family); // Jani,Tove,Cecilie,Lone var parents = ["Jani", "Tove"]; var brothers = ["Stale", "Kai Jim", "Borge"]; var children = ["Cecilie", "Lone"]; var family = parents.concat(brothers, children); document.write(family); // Jani,Tove,Stale,Kai Jim,Borge,Cecilie,Lone
  • 16. Array: métodos: join() var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.join() + "<br />"); document.write(fruits.join("+") + "<br />"); document.write(fruits.join(" and ")); // ?? // ?? // ??
  • 17. Array: métodos: join() var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.join() + "<br />"); document.write(fruits.join("+") + "<br />"); document.write(fruits.join(" and ")); // Banana,Orange,Apple,Mango // Banana+Orange+Apple+Mango // Banana and Orange and Apple and Mango
  • 18. Array: métodos: pop() var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.pop() + "<br />"); document.write(fruits + "<br />"); document.write(fruits.pop() + "<br />"); document.write(fruits); // ?? // ?? // ?? // ??
  • 19. Array: métodos: pop() var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.pop() + "<br />"); document.write(fruits + "<br />"); document.write(fruits.pop() + "<br />"); document.write(fruits); // Mango // Banana,Orange,Apple // Apple // Banana,Orange
  • 20. Array: métodos: push() var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.push("Kiwi") + "<br />"); document.write(fruits.push("Lemon","Pineapple")+"<br />"); document.write(fruits); // ?? // ?? // ??
  • 21. Array: métodos: push() var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.push("Kiwi") + "<br />"); document.write(fruits.push("Lemon","Pineapple")+"<br />"); document.write(fruits); // 5 // 7 // Banana,Orange,Apple,Mango,Kiwi,Lemon,Pineapple
  • 22. Array: métodos: reverse() var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.reverse()); // ??
  • 23. Array: métodos: reverse() var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.reverse()); // Mango,Apple,Orange,Banana
  • 24. Array: métodos: shift() var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.shift() + "<br />"); document.write(fruits + "<br />"); document.write(fruits.shift() + "<br />"); document.write(fruits); // ?? // ?? // ?? // ??
  • 25. Array: métodos: shift() var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.shift() + "<br />"); document.write(fruits + "<br />"); document.write(fruits.shift() + "<br />"); document.write(fruits); // Banana // Orange,Apple,Mango // Orange // Apple,Mango