7
का उपयोग कर जावास्क्रिप्ट में कॉल बेस विधि मूल रूप से मैं नीचे इस पटर का उपयोग करके बेस विधि कैसे कॉल करूं?डगलस क्रॉकफोर्ड की कार्यात्मक विरासत
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;
};
धन्यवाद।
अनातोली, मुझे इस मामले में .apply विधि का उपयोग करने की आवश्यकता क्यों है? अगर मैं बस बेसमे विधि (somedata) कॉल कर सकते हैं? – Sergey
लागू करें ऑब्जेक्ट "उस" के संदर्भ में फ़ंक्शन "बेसमे विधि" निष्पादित करेगा, यानी "बेसमे विधि" विधि में आप "यह" उपयोग कर सकते हैं - यह उससे लिंक होगा। यदि आप basemethod (somedata) का उपयोग करते हैं, तो फ़ंक्शन वैश्विक (विंडो) संदर्भ में चल रहा है, जो इस मामले में गलत है। नमूना:
– Anatoliyबहुत बढ़िया, धन्यवाद – danjah