关于flash actionscript3 的一个小问题,求指教
关于flashactionscript3的一个小问题,求指教写在时间轴的代码如functionadd(){trace(this);functionad(){trace(t...
关于flash actionscript3 的一个小问题,求指教写在时间轴的代码如
function add()
{
trace(this);
function ad()
{
trace(this);
}
}
结果为第一个[object maintimeline]
第二个为[object global]
请问global是什么对象?和root又有什么区别呢? 展开
function add()
{
trace(this);
function ad()
{
trace(this);
}
}
结果为第一个[object maintimeline]
第二个为[object global]
请问global是什么对象?和root又有什么区别呢? 展开
2个回答
展开全部
百度一下 AS3匿名函数的this指向
当函数Function调用时它有明确的归属指向时,会指向对应定义对象
比如你的add是定义在时间轴上的,所以它的宿主就是MainTimeLine
但add内的ad是属于匿名函数定义方式,所以它的调用对象默认就是global
详情看代码输出,使用Function的call或apply方法指定作用域
function add()
{
trace(this);
function ad()
{
trace(this)
}
ad()
ad.call(this)
ad.call(Object)
}
add();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询