Funções construtoras em Java Script
Basicamente um construtor é uma função. Um construtor pode ser executado como uma função ou pode ser utilizada para instanciar um objeto utilizando a palavra reservada new. Neste post veja funções construtoras em Java Script.
Em Java Script você usa funções como se usa classes em Java, por exemplo.
Classes é uma forma diferente de escrever funções em Java Script; é possível criar e instanciar funções. Veja:
function Automovel(velocidadeMaxima = 190, delta = 4) { //função que recebe dois parâmetros já com valores padrão
//atributo privado que pertence somente ao escopo de Automovel
let velocidadeAtual = 0 //não pode ser acessado diretamente (ex.: objeto.velocidadeAtual)
//método público
this.acelerar = function() { //método que acrescenta velocidade (velocidadeAtual)
//teste para verificar a velocidade (não permite ultrapassar o limite)
if(velocidadeAtual + delta <= velocidadeMaxima) {
velocidadeAtual += delta
} else {
velocidadeAtual = velocidadeMaxima
}
}
//método público para pegar a velocidade atual através da função
this.getVelocidadeAtual = function () {
return velocidadeAtual
}
}
//instância de objetos
const celta = new Automovel//pega parâmetros padrão da função Automovel
celta.acelerar() //chama função pública acelerar através do objeto celta
console.log(celta.getVelocidadeAtual())
const lamborghini = new Automovel(310, 18) //instancia função passando parâmetros
lamborghini.acelerar()
console.log(lamborghini.getVelocidadeAtual())
/* Acima temos duas instâncias diferentes a partir da mesma função construtora.*/
Utilizamos a palavra-chave this para tornar algo público, deixá-lo visível fora da função construtora.
Aprenda através de projetos reais e aulas práticas. São 20 cursos completos + cursos bônus. Grupos privados exclusivos, atualizações constantes e lives semanais.
Python, PHP, Java Script, CSS, Node, Angular JS, MySQL, Photoshop, Flutter, AWS, Apache e muito mais!
Link do curso: https://go.hotmart.com/X68198266R
Funções Factory em Java Script
Dúvidas ou sugestões? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits