Você está aqui: JavaScript ::: Dicas & Truques ::: Programação Orientada a Objetos |
Programação Orientada a Objetos em JavaScript - Como declarar e criar novos objetos usando a notação de funçãoQuantidade de visualizações: 1779 vezes |
|
Embora o ECMAScript 2015 (também conhecido como ECMAScript 6 ou ES6) tenha incluído a palavra-chave class para permitir a declaração de classes JavaScript no estilo Java e C++, é comum encontrarmos códigos antigos (e até mesmo sendo desevolvidos) que ainda usam a notação de função. Sim, é possível usar new para criar um objeto a partir de uma função. Vamos ver como isso é possível? Comece analisando o seguinte código: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
<html>
<head>
<title>Estudando JavaScript</title>
</head>
<body>
<script type="text/javascript">
// declara uma "classe" Produto
function Produto(){
this.nome;
this.preco;
// método que permite definir o nome
this.setNome = function(nome){
this.nome = nome;
}
// método que permite definir o preço
this.setPreco = function(preco){
this.preco = preco;
}
// método que permite obter o nome
this.getNome = function(){
return this.nome;
}
// método que permite obter o preço
this.getPreco = function(){
return this.preco;
}
}
// vamos criar um novo objeto Produto
var p = new Produto();
p.setNome("Notebook AGT 250");
p.setPreco(2400);
document.writeln("Nome: " + p.getNome());
document.writeln("<br>Preço: " + p.getPreco());
</script>
</body>
</html>
Veja que aqui nós criamos uma "classe" com o nome de Produto, que possui dois atributos: nome e preco. Ela possui também quatro métodos: setNome(), setPreco(), getNome() e getPreco(). O fato de eu ter colocado classe entre aspas, é porque estamos na verdade criando funções, simulando o comportamento da palavra-chave class ES6. Ao executarmos este código nós teremos o seguinte resultado: Nome: Notebook AGT 250 Preço: 2400 E agora a notícia mais importante. Quando estamos criando classes JavaScript como objetos de função, nós não estamos limitados à criação de apenas um objeto (como ocorre na criação de classes usando a notação de objeto). Usando a notação de funções, nós podemos criar quantos objetos quisermos. Veja, por exemplo, como criar dois produtos (que possuem a mesma estrutura e comportamento da classe Produto, porém, com atributos diferentes): ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
<html>
<head>
<title>Estudando JavaScript</title>
</head>
<body>
<script type="text/javascript">
// declara uma "classe" Produto
function Produto(){
this.nome;
this.preco;
// método que permite definir o nome
this.setNome = function(nome){
this.nome = nome;
}
// método que permite definir o preço
this.setPreco = function(preco){
this.preco = preco;
}
// método que permite obter o nome
this.getNome = function(){
return this.nome;
}
// método que permite obter o preço
this.getPreco = function(){
return this.preco;
}
}
// vamos criar um novo objeto Produto
var p = new Produto();
p.setNome("Notebook AGT 250");
p.setPreco(2400);
document.writeln("Nome: " + p.getNome());
document.writeln("<br>Preço: " + p.getPreco());
// vamos criar mais um objeto Produto
var p2 = new Produto();
p2.setNome("Impressora LX");
p2.setPreco(654.70);
document.writeln("<br><br>Nome: " + p2.getNome());
document.writeln("<br>Preço: " + p2.getPreco());
</script>
</body>
</html>
Ao executar o código novamente nós teremos o seguinte resultado: Nome: Notebook AGT 250 Preço: 2400 Nome: Impressora LX Preço: 654.7 |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de JavaScript |
Veja mais Dicas e truques de JavaScript |
Dicas e truques de outras linguagens |
|
Java - Programação Orientada a Objetos em Java - Como usar o modificador static em suas aplicações Java |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






