No padrão atual do JavaScript, existem várias formas de ‘simular’ uma classe. Iniciantes, com razão, ficam confuso com isto.
Iremos apresentar uma das formas que costumamos utilizar, assim como a forma como os programadores em geral estão acostumados a ver uma classe sendo criada.
Abaixo, como os programadores em geral estão acostumados e esperariam poder escrever uma classe em JavaScript:
class Greeter {
var greeting;
constructor(message) {
this.greeting = message;
}
greet() {
return "Hello, " + this.greeting;
}
}
var greeter = new Greeter("World");
Abaixo, uma das possíveis formas de como efetuar uma declaração correspondente:
var Greeter = (function () {
function Greeter(message) {
this.greeting = message;
};
Greeter.prototype.greet = function () {
return "Hello, " + this.greeting;
};
return Greeter;
})();
var greeter = new Greeter("world");




