TypeError: Error #1009: 无法访问空对象引用的属性或方法
刚使用as3的朋友..
也许会经常遇到
"typeerror: error #1009: 无法访问空对象引用的属性或方法。"
出现这个问题的原因很简单,常见的是"对象为null","属性不存在","方法不存在".
看看下面的例子:
- var list:array;
- trace(list.length)
由于list还有实例化,我们就调用了他的length的属性.ctrl+enter运行.出现了下面的错误
- typeerror: error #1009: 无法访问空对象引用的属性或方法。
- at _fla::maintimeline/frame1()
ps:我写在帧上,,所以函数名为frame1,类名为maintimeline.
其实本来很好解决的问题..
可是代码提示没有告诉我们是哪个对象,哪个属性,哪个方法,,
连哪一行都没有告诉我们..
只告诉我们是哪个函数,
如果像上面只有两行代码..那当然就好解决了,
可实现情况可能会有十行~二十行~
这时候可能得使用return或try这样的排除法...一步一步解决...
累~上面是前言...可以直接跳过.....
今天介绍一个简单而不常用的方式...可以方法解决上面的问题....
还是前面的代码
- var list:array;
- trace(list.length)
不过我们不使用ctrl+enter运行
我们使用ctrl+shift+enter运行
运行后调试窗出现以下面的内容
- 正在尝试使用 url c:\docume~1\*\locals~1\temp\未命名-1.swf 启动并连接到播放器
- 解压缩后字节数为 [swf] c:\documents and settings\*\local settings\temp\未命名-1.swf - 1970 字节
- typeerror: error #1009: 无法访问空对象引用的属性或方法。
- at _fla::maintimeline/frame1()[_fla.maintimeline::frame1:2]
再看看ide的中间
已经详细的告诉了我们是哪一行出了问题...
这样就可以快速定位到错误的行数...
然后根据该行的问题进行处理就ok了...