代理類

對於代理類,它的作用就是在不能傳參數的時候幫助你傳參數,什麼時候不能傳參數,
像:
addEventListener(Event.COMPLETE,function)
這個時候如果我們需要給function參指定的參數以達到不同的效果,就需要用到代理..,我們看看以下的用了代理函數的代碼
addEventListener(Event.COMPLETE,getFun(function,args))

這樣,我們就可以在本來不可以傳參的情況下傳送參數.其中getFun就是代理函數.(一般網上都已經直接寫成了代理類),getFun會幫我們把function,args生成一個無參數的函數再傳給addEventListener,那麼我們原來的function只需要寫成
function(e:Event[,參數]):void{
  //代碼
}
就可以了

  1. function getFun(_function:Function,...alt):Function{   
  2.     var _fun:Function = function (e:*):void {   
  3.         var _alt:Array = new Array()   
  4.         _function.apply(null,_alt.concat(e,alt));   
  5.     };   
  6. return _fun;   
  7. }  

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章