Skip to content

Instantly share code, notes, and snippets.

@pedrozath
Last active September 30, 2023 03:07
Show Gist options
  • Save pedrozath/9454a87119e96ff71b5ee4234a034e7c to your computer and use it in GitHub Desktop.
Save pedrozath/9454a87119e96ff71b5ee4234a034e7c to your computer and use it in GitHub Desktop.
Classes JavaScript
// ----------- Criando Classes ----------------------
var Modal = function(options) {
// aqui vai o construtor do objeto, código que vai ser rodado durante o instanciamento
this.options = options
}
Modal.prototype = {
// aqui vão os métodos da instancia, um a um como chaves/valores desse objeto
open: function(){
// da pra acessar options aqui por meio de `this.options`
},
close: function(){
}
}
// ----------- Criando Sub-classes ----------------------
var ModalWithForm = function(options){
Modal.call(this, options) // isto invoca o construtor do pai
// aqui pode colocar mais funcionalidades
}
Object.assign(ModalWithForm.prototype, Modal.prototype, {
// aqui você coloca métodos específicos da classe-filha
// ou até mesmo sobrescreve métodos da classe pai
})
// ----------- Namespaces ----------------------
Application = { }
Application.Modal = function(){
}
// etc, etc…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment