Created
April 27, 2011 22:12
-
-
Save fjunior87/945345 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Criando um objeto | |
var meuObjeto = {} | |
- Definindo uma classe | |
function Pessoa(){ | |
} | |
- Instanciando uma Pessoa | |
var p = new Pessoa() | |
-definir atributos | |
function Pessoa(){ | |
this.nome = "", | |
this.idade = null, | |
this.sexo = "" | |
} | |
p = new Pessoa() | |
p.nome = "Junior" | |
p.idade = 25 | |
p.sexo = "M" | |
p2 = new Pessoa() | |
p.nome = "Maria" | |
p.idade = 30 | |
p.sexo = "F" | |
-definir comportamento | |
function Pessoa(){ | |
this.nome = "", | |
this.idade = null, | |
this.sexo = "", | |
this.toString = function(){ | |
var s = "Meu Nome é:" + this.nome + "\n"; | |
s += "Minha idade é:" + this.idade + "\n"; | |
s += "Meu Sexo é:" + this.sexo + "\n" | |
return s | |
} | |
} | |
p = new Pessoa() | |
p.nome = "Junior" | |
p.idade = 25 | |
p.sexo = "M" | |
p.toString() | |
- Usando prototype | |
//adicionar o metodo dizerNome | |
Pessoa.prototype.dizerNome = function(){ | |
return this.nome | |
} | |
//adicionar atributos | |
Pessoa.prototype.peso = 0 | |
-Outra forma de definir um objeto com atributos e metodos: | |
meuObjeto = { | |
nome : "Junior", | |
idadde : 13, | |
falarNome: function(){ | |
return this.nome; | |
} | |
} | |
//JSON | |
- Definindo Parametros para os contrutores | |
function Pessoa(nome, sexo, idade){ | |
this.nome = nome, | |
this.sexo = sexo, | |
this.idade = idade | |
} | |
p = new Pessoa("","",23) | |
-Herança | |
//Utilizar Prototype | |
function Animal(){ | |
this.fazerSom = function(){ | |
return "" | |
} | |
} | |
function Cachorro(){ | |
this.fazerSom = function(){ | |
return "AU! Au!" | |
} | |
} | |
Cachorro.prototype = new Animal() | |
c = new Cachorro() | |
c.fazerSom() | |
//Utilizar o prototype: | |
function Carro(marca){ | |
this.marca = marca, | |
this.velocidade = 0, | |
this.acelerar = function(){ | |
this.velocidade++; | |
}, | |
this.velocidadeAtual = function(){ | |
return "O carro está a " + this.velocidade + "KM/h" | |
} | |
} | |
function Punto(){ | |
this.base = Carro | |
this.base("Fiat") | |
this.acelerar = function(){ | |
this.velocidade += 3 | |
} | |
} | |
Punto.prototype = new Carro() | |
c = new Carro(); | |
c.acelerar(); | |
console.log("Carro" + c.velocidadeAtual()); | |
p = new Punto(); | |
console.log(p.velocidade); | |
p.acelerar(); | |
console.log("Punto" + p.velocidadeAtual()); | |
p.marca | |
- Encapsulamento | |
//using var | |
function Carro(){ | |
this.velocidade = 12 | |
} | |
c =new Carro(); | |
console.log("Old" + c.velocidade); | |
c.velocidade = 30; | |
function Carro(){ | |
var velocidade = 0; | |
this.adicionarVelocidade = function(vel){ | |
velocidade += vel; | |
}; | |
this.obterVelocidade = function(){ | |
return velocidade | |
} | |
} | |
c = new Carro(); | |
c.adicionarVelocidade(20); | |
console.log("Tentando pegar velocidade:"+ c.velocidade); | |
console.log(c.obterVelocidade()); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment