');

JavaScriptClassi

Sintassi

  • classe Foo {}
  • la classe Foo estende la barra {}
  • class Foo {costruttore () {}}
  • class Foo {myMethod () {}}
  • class Foo {get myProperty () {}}
  • class Foo {set myProperty (newValue) {}}
  • class Foo {static myStaticMethod () {}}
  • class Foo {static get myStaticProperty () {}}
  • const Foo = class Foo {};
  • const Foo = class {};

Osservazioni

class supporto di class stato aggiunto a JavaScript solo come parte dello standard 2015.

Le classi Javascript sono zucchero sintattico sull'eredità basata su prototipo già esistente di JavaScript. Questa nuova sintassi non introduce un nuovo modello di ereditarietà orientato agli oggetti su JavaScript, solo un modo più semplice per gestire gli oggetti e l'ereditarietà. Una dichiarazione di class è essenzialmente una scorciatoia per la definizione manuale di una function costruzione e l'aggiunta di proprietà al prototipo del costruttore. Una differenza importante è che le funzioni possono essere chiamate direttamente (senza la new parola chiave), mentre una classe chiamata direttamente genererà un'eccezione.

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"; }

Se stai usando una versione precedente di JavaScript avrai bisogno di un transpiler come o per compilare il codice in una versione che la piattaforma di destinazione sarà in grado di comprendere.

Classi Esempi correlati