★ wanayoo — archive 1999 https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Classes/extendsNouvelle recherche | Portail wanayoo
mozilla
Vos résultats de recherche

    extends

    Cette fonction, proposition pour ECMAScript 6 (Harmony), est expérimentale
    Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
    Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

    Le mot-clé extends est utiliser dans les déclarations et expressions de classes afin de signifier qu'un type représenté par une classe hérite d'un autre type.

    Syntaxe

    class ClasseFille extends ClasseParente { ... }
    

    Description

    Le mot-clé extends peut être utilisé pour créer des sous-classes de classes existantes (natives ou non).

    Exemples

    Ce fragment de code est tiré de cet exemple et crée une classe Carré qui hérite de Polygone :

    class Carré extends Polygone {
      constructor(longueur) {
        // On utilise le constructeur de la classe parente
        // avec le mot-clé super
        super(longueur, longueur);
        // Pour les classes dérivées, super() doit être appelé avant de
        // pouvoir utiliser 'this' sinon cela provoque une exception
        // ReferenceError
        this.nom = 'Carré';
      }
    
      get aire() {
        return this.hauteur * this.largeur;
      }
    
      set aire(valeur) {
        this.aire = valeur;
      }
    }

    Dans l'exemple suivant, on crée l'équivalent d'une sous-classe pour Date :

    class maDate extends Date {
      constructor() {|
        super();
      }
    
      getFormattedDate() {
        var mois = ['Jan','Fév','Mar','Avr','Mai','Juin','Juil','Août','Sep','Oct','Nov','Déc'];
        return this.getDate() + "-" + mois[this.getMonth()] + "-" + this.getFullYear();
      }
    }

    Ces exemples sont extraits de ces deux pages : démonstration, source.

    Spécifications

    Spécification Statut Commentaires
    ECMAScript 6 (ECMA-262)
    La définition de 'extends' dans cette spécification.
    En cours de validation comme recommandation Définition initiale.

    Compatibilité des navigateurs

    Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
    Support simple 42.0 Disponible uniquement via le canal Nightly (depuis mars 2015) ? ? ?
    Création de sous-classes pour les tableaux (Array) 43.0 Pas de support ? ? ?
    Fonctionnalité Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
    Support simple 42.0 42.0 Disponible uniquement via le canal Nightly (depuis mars 2015) ? ? ?
    Création de sous-classes pour les tableaux (Array) 43.0 ? Pas de support ? ? ?

    Voir aussi

    Étiquettes et contributeurs liés au document

    Contributors to this page: SphinxKnight
    Dernière mise à jour par : SphinxKnight,
    Masquer la barre latérale