Le didacticiel avancé mentionne que les méthodes de création d'objets incluent la méthode littérale, le mode usine, le mode constructeur, le mode prototype, le mode mixte, etc. Il y a un exemple en mode usine,
function creatPerson(name){
var obj=new Object();
obj.name=name;
return obj;
}
var person=creatPerson(“hello”);
Le modèle constructeur a été utilisé à l'intérieur de la fonction ici, alors pourquoi le modèle d'usine est-il toujours présent ? Ces méthodes de création d’objets se développent-elles étape par étape ? L'attribut prototype d'une fonction est-il uniquement destiné au mode prototype, ou existe-t-il depuis la naissance de JavaScript. Quelqu'un peut-il me raconter l'historique ?
Afin d'éviter trop de complexité, vous pouvez le comprendre ainsi :
Modèle de constructeur :
var person = new Person('hello')
var person = new Person('hello')
工厂模式:
var person = creatPerson('hello')
var person = creatPerson('hello')
🎜 🎜En ce qui concerne le problème du prototype, veuillez vous référer à mon autre réponse : JavaScript est orienté objet, comment refléter la relation d'héritage de JavaScript ? 🎜