《基於MVC的javascript web富應用開發》中的一些函式

weixin_30639719發表於2020-04-05

【模擬類】
=======================================================
var Class = function(parent){

    var klass = function(){
       this.init.apply(this,arguments);
    };
  
   if (parent){
      var subclass = function(){};
      subclass.prototype = parent.prototype;
      klass.prototype = new subclass;
   }

   klass.prototype.init = function(){};

   klass.fn.parent = klass;
 
   klass.extend = function(obj){
      var extend = obj.extended;
      for (var i in obj){
         klass[i] = obj[i];
      }
      if (extended) extended(klass);
   };

   klass.include = function(obj){
     var include = obj.included;
     for(var i in obj){
        klass.fn[i] = obj[i];
     }
     if(included) included(klass);
   };

   klass.proxy = function(func){
      var self = this;
      return (function(){
          return func.apply(self, arguments);
      });
   };

   klass.fn.proxy = klass.proxy;
  
   return klass;

}



【改變函式的上下文】
==============================================
var proxy = function(func,thisObject){
     return (function(){
         return func.apply(thisObject , arguments);
     });
}

轉載於:https://www.cnblogs.com/cly84920/archive/2012/06/05/4426517.html

相關文章