JavaScriptLas clases


Sintaxis

  • clase Foo {}
  • clase Foo extiende Bar {}
  • clase Foo {constructor () {}}
  • clase Foo {myMethod () {}}
  • clase Foo {get myProperty () {}}
  • clase Foo {set myProperty (newValue) {}}
  • clase Foo {estática myStaticMethod () {}}
  • clase Foo {static get myStaticProperty () {}}
  • const Foo = clase Foo {};
  • const Foo = clase {};

Observaciones

class soporte de class solo se agregó a JavaScript como parte del estándar 2015 .

Las clases de Javascript son azúcar sintáctica sobre la herencia basada en un prototipo ya existente de JavaScript. Esta nueva sintaxis no introduce un nuevo modelo de herencia orientado a objetos a JavaScript, solo una forma más sencilla de tratar con los objetos y la herencia. Una declaración de class es esencialmente una abreviatura para definir manualmente una function constructor y agregar propiedades al prototipo del constructor. Una diferencia importante es que las funciones se pueden llamar directamente (sin la new palabra clave), mientras que una clase llamada directamente generará una excepción.

class someClass {
    constructor () {}
    someMethod () {}
}
 
console.log(typeof someClass);               
console.log(someClass);
console.log(someClass === someClass.prototype.constructor);                         
console.log(someClass.prototype.someMethod);
 
// Output:
// function
// function someClass() { "use strict"; }
// true
// function () { "use strict"; }

Si está utilizando una versión anterior de JavaScript, necesitará un transpiler como o closing para compilar el código en una versión que la plataforma de destino pueda entender.

Las clases Ejemplos relacionados