mozilla
Vos résultats de recherche

    Object.prototype

    Résumé

    La propriété Object.prototype représente le prototype de Object.

    Attributs de Object.prototype
    Écrivable Non
    Énumérable Non
    Configurable Non

    Description

    Tous les objets JavaScript descendent de Object ; aussi, tous les objets héritent des méthodes et propriétés de Object.prototype. Comme pour toutes les propriétés héritées, il est possible de surcharger ces propriétés (sauf pour un Object dont le prototype est null comme Object.create(null)). Par exemple, d'autres prototypes de constructeurs surchargent la propriété constructor et fournissent leur propre méthode toString(). Les modifications apportées au prototype d'Object se propagent à tous les objets sauf si celles-ci concernent des propriétés et des méthodes ayant été surchargées en aval de la chaîne de prototypes.

    Propriétés

    Object.prototype.constructor
    Définit la fonction qui a créé le prototype d'un objet.
    Object.prototype.__proto__
    Pointe vers l'objet qui a été utilisé comme prototype lors de l'instanciation de l'objet.
    Object.prototype.__noSuchMethod__
    Permet de définir une fonction qui sera exécutée lors d'une tentative d'accès à une méthode non-définie pour l'objet.
    Object.prototype.__count__
    UTilisée pour renvoyer le nombre de propriétés énumérables sur un objet défini par l'utilisateur. Cette propriété a été retirée.
    Object.prototype.__parent__
    Utilisée pour faire référence au contexte de l'objet. Cette propriété a été retirée.

    Méthodes

    Object.prototype.__defineGetter__()
    Associe une fonction à une propriété qui, lorsqu'on y accède, exécute la fonction et renvoie la valeur de retour.
    Object.prototype.__defineSetter__()
    Associe une fonction à une propriété qui, lorsqu'on la définit, exécute la fonction qui modifie la propriété.
    Object.prototype.__lookupGetter__()
    Renvoie la fonction associée à la propriété définie par la méthode __defineGetter__.
    Object.prototype.__lookupSetter__()
    Renvoie la fonction associée avec la propriété définie par la méthode __defineSetter__.
    Object.prototype.hasOwnProperty()
    Renvoie un booléen qui indique si l'objet contient la propriété donnée comme une propriété propre (non héritée via la chaîne de prototypes).
    Object.prototype.isPrototypeOf()
    Renvoie un booléen qui indique si l'objet donné est dans la chaîne de prototype de l'objet pour lequel on a utilisé la méthode.
    Object.prototype.propertyIsEnumerable()
    Renvoie un booléen qui indique si la propriété interne ECMAScript [DontEnum] est définie.
    Object.prototype.toSource()
    Renvoie une chaîne de caractères qui est un littéral objet représentant l'objet pour lequel la méthode a été appelée. La valeur de retour peut être utilisée pour créer un nouvel objet.
    Object.prototype.toLocaleString()
    Appelle la méthode toString().
    Object.prototype.toString()
    Renvoie une chaîne de caractères représentant l'objet.
    Object.prototype.unwatch()
    Supprime un point d'arrêt conditionnel placé sur une propriété de l'objet.
    Object.prototype.valueOf()
    Renvoie la valeur primitive de l'objet.
    Object.prototype.watch()
    Ajoute un point d'arrêt conditionnel sur une propriété de l'objet.
    Object.prototype.eval()
    Utilisée pour évaluer une chaîne de caractères étant du code JavaScript dans le contexte de l'objet. Cette méthode a été retirée.

    Exemples

    Javascript se base sur un modèle prototypal et non pas classique (au sens « modèle à base de classes »). Le prototype d'un objet est utilisé pour fournir de façon dynamique des propriétés aux objets qui héritent du prototype. Par exemple :

    var Personne = function() {
      this.peutParler = true;
      this.salutation = function() {
        if (this.peutParler) {
          console.log('Bonjour, je suis ' + this.nom);
        }
      };
    };
    
    var Employé = function(nom, titre) {
      this.nom = nom;
      this.titre = titre;
      this.salutation = function() {
        if (this.peutParler) {
          console.log("Bonjour, je suis " + this.nom + ", le " + this.titre);
        }
      };
    };
    Employé.prototype = new Personne();
    
    var Client = function(nom) {
      this.nom = nom;
    };
    Client.prototype = new Personne();
    
    var Mime = function(nom) {
      this.nom = nom;
      this.peutParler = false;
    };
    Mime.prototype = new Personne();
    
    var bob = new Employé('Bob', 'bricoleur');
    var joe = new Client('Joe');
    var rg = new Employé('Red Green', 'réparateur');
    var mike = new Client('Mike');
    var mime = new Mime('Mime');
    bob.salutation();
    joe.salutation();
    rg.salutation();
    mike.salutation();
    mime.salutation();
    

    This will output:

    Bonjour, je suis Bob, le bricoleur
    Bonjour, je suis Joe
    Bonjour, je suis Red Green, le réparateur
    Bonjour, je suis Mike
    

    Spécifications

    Spécification Statut Commentaires
    Première édition d'ECMAScript. Standard Définition initiale. Implémentée avec JavaScript 1.0.
    ECMAScript 5.1 (ECMA-262)
    La définition de 'Object.prototype' dans cette spécification.
    Standard  
    ECMAScript 6 (ECMA-262)
    La définition de 'Object.prototype' dans cette spécification.
    En cours de validation comme recommandation  

    Compatibilité des navigateurs

    Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
    Support simple (Oui) (Oui) (Oui) (Oui) (Oui)
    Fonctionnalité Android Chrome pour Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
    Support simple (Oui) (Oui) (Oui) (Oui) (Oui) (Oui)

    Voir aussi

    Étiquettes et contributeurs liés au document

    Contributors to this page: Jeremie, teoli, BenoitL, WSH, SphinxKnight, ctjhoa
    Dernière mise à jour par : ctjhoa,