Comprendre le constructeur et le prototype
La propriété constructeur de Javascript ne concerne pas directement affecter le constructeur appelé lors de la création de l'objet. Il enregistre simplement quelle fonction a été utilisée avec l'opérateur new pour initialiser l'objet.
La propriété prototype, en revanche, joue un rôle crucial dans les recherches d'objets. Si une propriété n'est pas trouvée sur l'objet lui-même, Javascript vérifie .__proto__. S'il n'est toujours pas trouvé, il continue dans la chaîne du prototype.
La propriété Constructor
Le paramètre Bar.prototype.constructor = Bar fait apparaître l'objet Bar.prototype comme s'il avait été créé par Bar plutôt que Foo. Ceci n'est pas recommandé et va à l'encontre de l'usage idiomatique de Javascript.
Conclusion
Évitez la confusion entourant l'héritage en Javascript. Concentrez-vous sur les interfaces et les mixins au lieu d'essayer d'imposer un modèle d'héritage classique sur le système basé sur un prototype. La vérification de propriétés spécifiques est plus fiable que la vérification de types d'objet. L'affectation manuelle de la propriété constructeur n'est pas une pratique courante en Javascript idiomatique.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!