function myObject()
{
}
function myMethod(obj)
{
trace("this == obj? " + (this == obj));
}
var obj:Object = new myObject();
myMethod.call(obj,obj);
它定义了一个方法,使用“方法.call(obj,obj)”视第一个obj对象有此方法、第二个obj则为调用该方法时的参数。
这种设计思路很有意思!——对象的方法不在对象里面定义。
可以类推如下:
function myMethod(obj)
{
trace("this == obj? " + (this == obj));
}
var my_btn:Button;
var my_mc:MovieClip;
// ...
myMethod.call(my_btn,my_btn);
myMethod.call(my_mc,my_mc);
// ...
此call相当实用,在某些地方可以减少重复代码。我在一个项目中曾用过一回,心旷神怡!
本文转自:http://www.5uflash.com/flashjiaocheng/Flashaschengxu/465.html
{
}
function myMethod(obj)
{
trace("this == obj? " + (this == obj));
}
var obj:Object = new myObject();
myMethod.call(obj,obj);
它定义了一个方法,使用“方法.call(obj,obj)”视第一个obj对象有此方法、第二个obj则为调用该方法时的参数。
这种设计思路很有意思!——对象的方法不在对象里面定义。
可以类推如下:
function myMethod(obj)
{
trace("this == obj? " + (this == obj));
}
var my_btn:Button;
var my_mc:MovieClip;
// ...
myMethod.call(my_btn,my_btn);
myMethod.call(my_mc,my_mc);
// ...
此call相当实用,在某些地方可以减少重复代码。我在一个项目中曾用过一回,心旷神怡!
本文转自:http://www.5uflash.com/flashjiaocheng/Flashaschengxu/465.html