class, instruction (JavaScript)class Statement (JavaScript)

Déclare une nouvelle classe.Declares a new class.

SyntaxeSyntax

class classname () [extends object] {    [constructor([arg1 [,... [,argN]]]) {        statements    }]    [[static] method([arg1 [,... [,argN]]]) {        statements    }]}  

ParamètresParameters

classname
Obligatoire.Required. Nom de la classe.The name of the class.

object
Facultatif.Optional. Objet ou classe à partir duquel ou de laquelle la nouvelle classe hérite des propriétés et méthodes.An object or class from which the new class inherits properties and methods.

constructor
Facultatif.Optional. Fonction de constructeur qui initialise la nouvelle instance de la classe.A constructor function that initializes the new class instance.

arg1...argN
Facultatif.Optional. Liste facultative d’arguments séparés par des virgules que comprend la fonction.An optional, comma-separated list of arguments the function understands.

statements
Facultatif.Optional. Une ou plusieurs instructions JavaScriptJavaScript.One or more JavaScriptJavaScript statements.

static
Facultatif.Optional. Spécifie une méthode statique.Specifies a static method.

method
Facultatif.Optional. Une ou plusieurs méthodes statiques ou d'instance JavaScriptJavaScript qui peuvent être appelées sur une instance de classe.One or more JavaScriptJavaScript instance or static methods that can be called on a class instance.

RemarquesRemarks

Une classe vous permet de créer des objets à l'aide de l'héritage de prototype, des constructeurs, des méthodes d'instance et des méthodes statiques.A class allows you to create new objects using prototype-based inheritance, constructors, instance methods, and static methods. Vous pouvez utiliser l'objet super dans un constructeur de classe ou une méthode de classe pour appeler le même constructeur ou la même méthode dans la classe ou l'objet parent.You can use the super object within a class constructor or class method to call the same constructor or method in the parent class or object. Vous pouvez également utiliser l'instruction extends après le nom de classe pour spécifier l'objet ou la classe à partir duquel ou de laquelle la nouvelle classe hérite des méthodes.Optionally, use the extends statement after the class name to specify the class or object from which the new class inherits methods.

ExempleExample

class Spelunking extends EXPERIENCE.Outdoor {  
  constructor(name, location) {  
    super(name, location);  

    this.minSkill = Spelunking.defaultSkill();  
    //...  
  }  
  update(minSkill) {  
    //...  
    super.update(minSkill);  
  }  
  static defaultSkill() {  
    return new EXPERIENCE.Level3();  
  }  
}  

ExempleExample

Vous pouvez également créer des noms de propriété calculée pour les classes.You can also create computed property names for classes. L'exemple de code suivant crée un nom de propriété calculée à l'aide de la syntaxe set.The following code example creates a computed property name using set syntax.

var propName = "prop_42";  

class Spelunking {  
    set [propName](v) {  
        this.value = v;  
    }  
};  

var s = new Spelunking();  
console.log(s.value);  
s.prop_42 = 42;  
console.log(s.value);  

// Output:  
// undefined  
// 42  

ExempleExample

L'exemple de code suivant crée un nom de propriété pour une classe dynamiquement à l'aide de la syntaxe get.The following code example creates a property name for a class dynamically using get syntax.

var propName = "prop_42";  

class Spelunking {  
    get [propName]() {  
        return 777;  
    }  
}  

var s = new Spelunking();  
console.log(s.prop_42);  

// Output:  
// 777  

SpécificationsRequirements

Pris en charge dans Microsoft Edge (navigateur Edge) avec les fonctionnalités JavaScript expérimentales activées (about:flags)Supported in Microsoft Edge (Edge browser) with experimental JavaScript features enabled (about:flags). Voir Informations de version.See Version Information.
Non pris en charge dans les modes de document suivants : Quirks, Internet Explorer 6 (mode normes), Internet Explorer 7 (mode normes), Internet Explorer 8 (mode normes), Internet Explorer 9 (mode normes), Internet Explorer 10 (mode normes), Internet Explorer 11 (mode normes).Not supported in the following document modes: Quirks, Internet Explorer 6 standards, Internet Explorer 7 standards, Internet Explorer 8 standards, Internet Explorer 9 standards, Internet Explorer 10 standards, Internet Explorer 11 standards. Non pris en charge dans Windows 8.1.Not supported in Windows 8.1.