[url]http://uh.9ria.com/space-12147-do-blog-id-6445.html[/url]
public function aaaa(r:Number = 123)
{
rHandler();
function rHandler():void
{
var t:TextField = new TextField();
t.text = r;
this.addChild(t);
}
}
像这样的程序。function还是能调到上一级的局部变量。但是这样有个问题,就是this的取值是不正确的,不是对象本身而是全局域。
这里其实只要用rHandler.call(this)就能让函数内的this是正确的值。
public function aaaa(r:Number = 123)
{
rHandler();
function rHandler():void
{
var t:TextField = new TextField();
t.text = r;
this.addChild(t);
}
}
像这样的程序。function还是能调到上一级的局部变量。但是这样有个问题,就是this的取值是不正确的,不是对象本身而是全局域。
这里其实只要用rHandler.call(this)就能让函数内的this是正确的值。