Dans l'exemple:Y a-t-il un nom pour cette construction particulière?
function foo() {
var bar = this.bar = function() {
return "bar";
};
this.mybar = function() {
return bar();
}
}
var myFoo = new foo();
myFoo.bar = function() {
return "notbar";
};
myFoo.bar(); // returns 'notbar'
myFoo.mybar(); // returns "bar"
Fondamentalement, il permet une méthode privée interne à une fermeture, avec la possibilité d'être remplacé que pour l'accès externe. Donc, la référence à la fonction d'origine ne change jamais, pour les références de cette fonction dans la fermeture. Mais les instantiateurs de l'objet de fermeture peuvent remplacer cette fonction sans casser la fonctionnalité de l'objet.
Y a-t-il un nom pour cette construction particulière, et est-ce même utile?
Plus ressemble à une altération de JavaScript. – ulidtko