页面

2010年10月14日星期四

理解as3 Function中的this

这里Function有两个称呼:类中的叫方法,其它的叫函数,而Function中的this因这两种情况其this值是不一样的
在类中,this指向该方法的关联对象
函数,this指向该函数的调用者

如:
var c1:C1=new C1(); 
var c2:C2=new C2();

var f:Function = function(){
   trace(this); 
   this.doSomthing();
};

f.call(null); //调用者为global
f.call(c1);  //调用者(或者叫关联者更贴切)为c1,doSomthing为C1中的方法
f.call(c2);  //调用者(或者叫关联者更贴切)为c2,doSomthing为C2中的方法

没有评论:

发表评论