By: Eduardo Almeida- 6/6/2011
Em: Client side, Ambientes & Linguagens - Comentários: 3 - Leituras: 3868
Boa noite pessoal, vamos dar continuidade ao nosso artigo de OO. Vou dar algumas dicas interessantes hoje!
Essa propriedade nos permite adicionar e, em alguns casos modificar, propriedades ou métodos do construtor após sua definição.
Poderemos adicionar propriedades durante a execução. Todo construtor javascript possui a propriedade function.prototype.
function animal()
{
};
// instancia-se o objeto
var cavalo = new animal;
//altera propriedades do construtor em tempo de execução
cavalo.prototype.orelhas = 2;
cavalo.prototype.olhos = 2;
alert(cavalo.olhos);// alerta 2
Esta propriedade não pode ser usada para sobrescrever nada que ja tenho sido definido no construtor. Uma dica é definir tudo no construtor ou fora do construto via function.prototype
Não há ainda suporte a encapsulamento no javascript, porém poderemos simular utilzando o escopo. Observem o exemplo:
function animal()
{
// propriedades públicas
this.orelhas = 2;
this.olhos = 2;
// propriedades privadas
var privada_variavel = "azul";
//método público
this.emitir_som = function(som) {
alert(som);
}
//método privado
var privado_metodo = function() {
alert();
}
};
var cavalo = new animal;
// le propriedade publica do objeto
alert(cavalo.olhos); // alerta -> 2
alert(cavalo.orelhas); // alerta -> 2
// le propriedade privada do objeto
alert(cavalo.privada_variavel); // alerta -> undefined
// invoca método público do objeto
cavalo.emitir_som("innhornhornhorn"); // alerta innhornhornhorn
// invoca método privado do objeto
cavalo.privado_metodo(); // retornará erro
" Ta ficando muito boa essa série de artigos. Muita coisa ta ficando clara agora pra mim xD
vlw pessoal "
Por: Marcos antonio. Em: 6/6/2011
" eduardo, você poderia mostrar exemplos de acomo aplicar conceitos de OO e criar elementos no DOM em tempo de execução? "
Por: Daniel Matias. Em: 26/6/2011
" Daniel, segue o exemplo
var minhadiv = document.createElement('div');
minhadiv.style.height = '100px';
minhadiv.style.width = '200px';
minhadiv.style.float = 'left';
minhadiv.id="IDdaDiv";
minhadiv.className="NomedaClasseCSSdaDiv";
minhadiv.onclick = function()
{
alert("Meu evento click");
} "
Por: Eduardo Almeida. Em: 13/10/2011
Desde de 1998 ...
a WEB2 vêm desenvolvendo sites, softwares, implementando ambientes servidores,
prestando consultoria na área de segurança para diversas empresas
como bancos, imobiliárias, agências, cartórios, escritórios de advocacia e até
empresas multi-nacionais. Trabalhamos para criar
experiências intuitivas para os usuários, desenhar interfaces ricas e
elegantes, desenvolver aplicativos úteis, consolidar sites e produtos
que ajudamos a criar, seja desenvolvendo, analisando ou melhorando sua performance. Resumindo, construímos "business" para internet.
Copyright © 2012 WEB2 Soluções LTDA. CNPJ: 14.832.733/0001-05.