7
In pratica, come si chiama un metodo di base che utilizza questo schema di seguito?Metodo call in Javascript utilizzando l'ereditarietà funzionale di Douglas Crockford
var GS = {};
GS.baseClass = function (somedata) {
var that = {};
that.data = somedata;
//Base class method
that.someMethod = function(somedata) {
alert(somedata);
};
return that;
};
GS.derivedClass = function(somedata) {
var that = GS.baseClass(somedata);
//Overwriting base method
that.someMethod = function(somedata) {
//How do I call base method from here?
//do something else
};
return that;
};
Grazie.
Anatoliy, perché devo usare il metodo .apply in questo caso? se posso semplicemente chiamare basemethod (somedata)? – Sergey
Applica eseguirà la funzione "basemethod" nel contesto dell'oggetto "che", cioè nel metodo "basemethod" è possibile utilizzare "questo" - saranno i collegamenti a tale. Se si utilizza basemethod (somedata), la funzione verrà eseguita nel contesto globale (finestra), che in questo caso non è corretto. Campione:
– AnatoliyImpressionante, grazie – danjah