Você está na página 1de 21

Autoria Web

Objetos em JavaScript

Prof Silvano Oliveira


prof.silvano.oliveira@gmail.com

Prof. Silvano Oliveira / 21


O que é um objeto?
● Componente de software que
permite representar em código
entidades e coisas do mundo
real.
● Um componente de software
que inclui dados (campos) e
comportamentos (métodos)
● Em geral, os atributos são
manipulados pelos métodos do
próprio objeto
(encapsulamento)

Prof. Silvano Oliveira Autoria WEB 2 / 21


Criando objetos
var bob = {};
bob.nome = “Roberto da Silva”;
bob.idade = 20;
bob.cidade = “Atlântida”;

var bob = new Object();


bob.nome = “Roberto da Silva”;
bob.idade = 20;
bob.cidade = “Atlântida”;

Prof. Silvano Oliveira Autoria WEB 3 / 21


Criando objetos com atributos

var bob = {
nome: “Roberto da Silva”,
idade: 20,
cidade: “Atlântida”
};

Prof. Silvano Oliveira Autoria WEB 4 / 21


Acessando atributos
nome = bob.nome;
idade = bob.idade;
Cidade = bob.cidade;

Um objeto é nome = bob[“nome”];


um dicionário idade = bob[“idade”];
cidade = bob[“cidade”];

Prof. Silvano Oliveira Autoria WEB 5 / 21


Métodos
● Funções associadas a
objetos.
● Definem o comportamentos
dos objetos.
● Em geral, os atributos são Exemplo de função
manipulados pelos métodos
do próprio objeto
(encapsulamento)
function quadrado(x){
return x * x ;
};

Prof. Silvano Oliveira Autoria WEB 6 / 21


Métodos

var bob = new Object(x);


bob.nome = “Roberto da Silva”;
bob.idade = 20;

bob.defina_idade = function(nova_idade){
bob.idade = nova_idade;
};

bob.defina_idade(25);

Prof. Silvano Oliveira Autoria WEB 7 / 21


Métodos

bob.ano_nascimento = function(){
return 2012 – bob.idade;
};

alert( bob.ano_nascimento() );

Prof. Silvano Oliveira Autoria WEB 8 / 21


A palavra-chave this

var defina_idade = function(nova_idade){


this.idade = nova_idade;
};

bob.defina_idade = defina_idade;

bob.defina_idade(34);
Sem ( ). Não é chamada
de métodos
Com ( ). É chamada
de métodos

Prof. Silvano Oliveira Autoria WEB 9 / 21


A palavra-chave this

var ze = new Object();


ze.idade = 30;

ze.defina_idade = defina_idade;

ze.defina_idade(34);

Já criada e é genérica.

Prof. Silvano Oliveira Autoria WEB 10 / 21


Construtores

var ze = new Object(); Objetos deveriam representar


ze.idade = 30; a mesma entidade do
ze.cidade = “Atlantida”; mundo real (uma pessoa)

var bob = new Object();


bob.idade = 20;
bob.cidade = “Pasárgada”;
bob.nome = “Roberto da Silva”

Prof. Silvano Oliveira Autoria WEB 11 / 21


Construtores

function Pessoa(nome, idade, cidade){


this.nome = nome;
this.idade = idade;
this.cidade = cidade;
this.especie = “Homo Sapiens”;
};
var bob = new Pessoa(“Roberto da Silva”,
23, “Pasárgada”);
var ze = new Pessoa(“José de Souza”,
30, “Atlântida”);

Prof. Silvano Oliveira Autoria WEB 12 / 21


Construtores

function Pessoa(nome, idade, cidade){


this.idade = idade;
# outros atributos

this.defina_idade = function(nova_idade){
this.idade = nova_idade;
}
};
var bob = new Pessoa(“Roberto da Silva”,
23, “Pasárgada”);
bob.defina_idade(45);

Prof. Silvano Oliveira Autoria WEB 13 / 21


Exercícios
●Lições 8 da trilha JavaScript no Codecademy

Prof. Silvano Oliveira Autoria WEB 14 / 21


Qual o tipo?

Prof. Silvano Oliveira Autoria WEB 15 / 21


Tem atributo?

Prof. Silvano Oliveira Autoria WEB 16 / 21


Todos atributos e seus valores

Prof. Silvano Oliveira Autoria WEB 17 / 21


Todos atributos e seus valores

Prof. Silvano Oliveira Autoria WEB 18 / 21


Exercícios
●Lição 8 da trilha JavaScript no Codecademy

Prof. Silvano Oliveira Autoria WEB 19 / 21


Perguntas???

Prof. Silvano Oliveira Autoria WEB 20 / 21


Referências
●http://www.javascript-tutorial.com.br
●http://developer.mozilla.org/en/JavaScript
●http://grupoweblovers.co.cc
●http://jquerybrasil.org

Prof. Silvano Oliveira Autoria WEB 21 / 21

Você também pode gostar