5D艺术网首页
商城
|
资讯
|
作品
|
博客
|
教程
|
论坛
登录
注册
加为好友
发短消息
来自:
性别:秘密
最后登录:2007-05-13
http://flashhawk.5d.cn/
首页
|
新闻
|
话题
|
博客
|
相册
|
艺术作品
|
社交关系
|
留言板
|
社交圈
2004/10/26 | 在类中使用setInterval()随感。
类别(AS程序设计)
|
评论
(5)
|
阅读(180)
|
发表于 15:19
在类中使用setInterval()随感。
下面看两段代码
class testA
{
public var _arg:String="ok";
public function testMethod():Void
{
setInterval(testInterval,500);
}
private function testInterval():Void
{
trace(_arg)
}
}
--------------------------------------------------------
class testB
{
public var _arg:String="ok";
public function testMethod():Void
{
setInterval(testInterval,500,_arg);
}
private function testInterval(arg:String):Void
{
trace(arg)
}
}
--------------------------------------------------------
大家测试一下两段代码,testA输出undefined,而testB会输出ok,导致上面的原因就是,虽然你把interval执行时的方法写在了类里面,但你在那个方法里面的代码中的this并不指向上类的实例,除非你是以 "类实例名称.方法名"来执行时,this才指向类的实例 否则它里面的this是指向interval,这是我上午遇到的问题,非常感谢THOR给我的教导,其实很多人在写代码的时候都没弄明白对象引用,而导致很多BUG和问题 ,所以以后关键不是急于写,而是在于你是不是弄清楚了程序到底是怎么运行的机理,这样在去写,才会有的放矢,才不会引起不必要的麻烦。非常感谢THOR。
0
评论
Comments
日志分类
首页
[190]
AS程序设计
[44]
互动实验室
[6]
flash杂项
[37]
互动设计
[1]
flash新闻
[25]
资源连接
[29]
心情日记
[36]
酷东西欣赏
[10]
PHP
[2]