1102 Constructeur 2

/ *
* Créer un constructeur Person
* -Dans le constructeur Person, ajoutez une méthode sayName pour chaque objet.
* Actuellement, notre méthode est créée à l'intérieur du constructeur.
* Autrement dit, chaque fois que le constructeur est exécuté Créer une nouvelle méthode sayName
* Le sayName de toutes les instances est unique.
* Cela provoque la création d'une nouvelle méthode une fois le constructeur exécuté,
* 10000 nouvelles méthodes sont créées après 10 000 exécutions et 10 000 méthodes sont toutes identiques.
* Ceci est complètement inutile et peut être utilisé complètement Tous les objets partagent la même méthode
* /
fonction Personne (nom, âge, sexe) {
this.name = name;
this.age = age;
this.gender = gender;
// Ajouter une méthode à l'objet
//this.sayName = fun;
}

// Définir la méthode sayName dans la portée globale
/ *
* Définir la fonction dans la portée globale, qui pollue l'espace de noms de la portée globale
* Et il est également dangereux de définir dans la portée globale
* /
/ * function fun () {
alert ("Bonjour à tous, je suis:" + this.name);
}; * /
// Ajout de la méthode sayName au prototype
Person.prototype.sayName = function () {
alert ("Bonjour à tous, je suis:" + this.name);
};

// Créer une instance de Person
var per = new Person ("孙悟空", 18, "Male ");
var per2 = new Person (" 猪 八戒 ", 28," 男 ");
per.sayName ();
per2.sayName ();

//console.log(per.sayName == per2.sayName);

Je suppose que tu aimes

Origine www.cnblogs.com/xt888/p/12680499.html
conseillé
Classement