简体   繁体   English

使用Douglas Crockford的函数继承在Javascript中调用基本方法

[英]Call base method in Javascript using Douglas Crockford's functional inheritance

Basically how do I call a base method using this patter below? 基本上我如何使用下面这个模式调用基本方法?

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;
};

Thanks. 谢谢。

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
 var basemethod = that.someMethod;
 that.someMethod = function(somedata) {
   //How do I call base method from here? 
   basemethod.apply(that, [somedata]);
   //do something else
 };
 return that;
};

Cheers. 干杯。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM