Java script aula 03 - objetos

1,559 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,559
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
154
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Java script aula 03 - objetos

  1. 1. JAVASCRIPT - OBJETOS Cristiano Pires Martins - Fonte: JavaScript Guia do Programador Maujor - NOVATEC
  2. 2. Objetos Pseudolinguagem orientada a objetos Objetos Coleção não ordenada de propriedades e métodos constituída por pares nome/valor;
  3. 3. Criando Objetos Função construtora nativa denominada Object() var livro = new Object();
  4. 4. Sintaxe para criar o objeto livro var livro = new Object(); livro.titulo = “JavaScript”; livro.autor = “Maujor”; livro.paginas = “432”; livro.preco = “R$69,00”; livro.freteSedex = function (ceporigem,cepdestino,peso){ var valorFrete = “”; valorFrete = ceporigem * cepdestino * peso; return valorFrete; } livro.capitulo1 = “Revisao JavaScript”; livro.capitulo2 = “Funções”; livro.capitulo3 = “Eventos”; livro.capitulo4 = “Requisições”;
  5. 5. Para recuperar os valores de propriedades e métodos var nomeAutor = livro.autor; var capituloQuatro = livro.capitulo4; var valorFrete = livro.freteSedex(15700000,1,2); alert(“Autor:“ + nomeAutor + “nCap4:“ + capituloQuatro + “nValor Frete: ” + valorFrete);
  6. 6. Objetos • Outra sintaxe para recuperar os valores de propriedades de um objeto: • var nomeAutor = livro[autor]; • var capituloCinco = livro[capitulo5];
  7. 7. Apresentar todos os pares do objeto var pares = “”; for(var prop in livro){ pares += prop + “: ” + livro[prop] + “n”; }; alert(pares);
  8. 8. Objeto Livro usando objeto capítulos aninhado var livro = new Object(); livro.titulo = “JavaScript”; livro.autor = “Maujor”; livro.paginas = “432”; livro.preco = “R$69,00”; livro.freteSedex = function (ceporigem,cepdestino,peso){ var valorFrete = “”; valorFrete = ceporigem * cepdestino * peso; return valorFrete; } livro.capitulos = new Object(); //note que não usa “var” livro.capitulos.capitulo1 = “Revisao JavaScript”; livro.capitulos.capitulo2 = “Funções”; livro.capitulos.capitulo3 = “Eventos”; livro.capitulos.capitulo4 = “Requisições”;
  9. 9. Sintaxe Literal var livro = { “titulo” :“JavaScript”, “autor” :“Maujor”, “paginas” :“432”, “preco” :“R$69,00”, “freteSedex” : function (ceporigem,cepdestino,peso){ var valorFrete = “”; valorFrete = ceporigem * cepdestino * peso; return valorFrete; }, “capitulos”: { “capitulo1” :“Revisao JavaScript”, “capitulo2”:“Funções”, “capitulo3” :“Eventos”, “capitulo4” :“Requisições” }
  10. 10. Objetos Sintaxe Literal • Outra sintaxe para recuperar os valores de propriedades de um objeto: • var autor = livro.autor; • var autor = livro[“autor”];
  11. 11. Objetos Sintaxe Literal var pares = “”; for(var prop in livro) { pares += prop + “: ” + livro[prop] + “n”; }; alert(pares);
  12. 12. Listar Objetos Aninhados var pares = “”; for(var prop in livro){ pares += prop + “: ” + livro[prop] + “n”; if(typeof livro[prop] == “object”){ for(var prop1 in livro[prop]){ pares += prop1 + “: ” + livro[prop][prop1] + “n”; } } }; alert(pares);
  13. 13. Listar Objetos Aninhados: Ocultar a linha capítulos: [object Object] var pares = “”; for(var prop in livro){ if(typeof livro[prop] == “object”){ for(var prop1 in livro[prop]){ pares += prop1 + “: ” + livro[prop][prop1] + “n”; } } else pares += prop + “: ” + livro[prop] + “n”; }; alert(pares);
  14. 14. Objeto Nativo Math • var pi = Math.PI; • var pot = Math.pow(x,y); • Exemplo: function areaBase(){ aBase = Math.PI * Math.pow(this.raioBase, 2); return aBase; }
  15. 15. Construtor Denomina-se função construtora ou simplesmente construtor uma função capaz de criar objetos
  16. 16. Exemplo de Construtor function Cilindro(r,h) { this.raioBase = r; this.altura = h; }; cilindroUm = new Cilindro(2,5); alert(“Raio da base: “ + cilindroUm.raioBase + “nAltura: “ + cilindroUm.altura); cilindroDois = new Cilindro(20,10);
  17. 17. Construtor Por convenção e de acordo com as boas práticas de programação, nomes de construtores devem começar com letra maiúscula. • No vocabulário de programação orientada a objetos, uma função construtora é chamada de classe. • Em JavaScript não existem classes com o mesmo sentido de outras linguagens;
  18. 18. Funções para os métodos criados function Cilindro(r,h) { this.raioBase = r; this.altura = h; this.areaBase = calculaAreaBase; }; function calculaAreaBase(){ return Math.PI * Math.pow(this.raioBase, 2); }; cilindroUm = new Cilindro(2,5); alert(“Raio da base: “ + cilindroUm.raioBase + “nAltura: “ + cilindroUm.altura + “nÁrea da base: “ + cilindroUm.areaBase());
  19. 19. Sintaxe Alternativa function Cilindro(r,h) { this.raioBase = r; this.altura = h; this.areaBase = function calculaAreaBase() return Math.PI * Math.pow(this.raioBase, 2); };
  20. 20. function Cilindro(r,h) { this.raioBase = r; this.altura = h; this.areaBase = function calculaAreaBase(){ return Math.PI * Math.pow(this.raioBase, 2); }; this.areaLateral = function calculaAreaLateral(){ return 2 * Math.PI * this.raioBase * this.altura; }; this.areaTotal = function calculaAreaTotal(){ return 2 * this.areaBase() + this.areaLateral(); }; this.volume = function calculaVolume(){ return this.areaBase() * this.altura; }; }; cilindroDois = new Cilindro(3,10); alert(“Raio da base: “ + cilindroDois.raioBase + “nAltura: “ + cilindroDois.altura + “nÁrea da base: “ + cilindroDois.areaBase() + “nÁrea Lateral:“ + cilindroDois.areaLateral() + “nÁrea Total: ” + cilindroDois.areaTotal() + “nVolume: ” + cilindroDois.volume()); Função Construtora

×