J'ai vu des objets définis de deux manières différentes, qui fonctionnent de manière similaire, mais qui sont, bien sûr, fondamentalement différents. Vous pouvez le faire soit comme ceci:Quelle méthode de création d'objets javascript est la meilleure?
var myobject = {property: 'hello',
act: function() {
this.property += ' world';
}};
et comme ceci:
function myobject() {
this.property = 'hello';
this.act = function() {
this.property += 'world';
}
}
La deuxième méthode pourrait créer des objets comme si
var newobj = new myobject();
mais vous pouvez faire quelque chose de similaire en utilisant la première notation en faisant de l'objet la valeur de retour d'une fonction. Le nouveau mot-clé a l'avantage de pouvoir transmettre des paramètres qui peuvent être utilisés pour initialiser les propriétés de l'objet, mais vous pouvez tout aussi bien ajouter une fonction init au premier type d'objet. Je me demandais si, en dehors de ces deux différences, il y avait une différence fondamentale qui rendait une méthode nettement meilleure que l'autre méthode.
Il y a beaucoup de différence et personne ne s'accorde à dire qu'une méthode est meilleure. Contexte: http: // stackoverflow.com/questions/1595611/comment créer correctement un objet personnalisé en JavaScript – bobince