无意义的类型错误: 错误 #1010: 术语未定义且没有属性



我有这个简单的代码:

...
for (var w:Number=0; w < MAX_w; w++){
   for (var k:Number=0; k < MAX_k; k++){
      trace("test01");
      if(w != k){
         trace("test02");
         ///do sth...
      }
   }
}
...

输出为:

...
test01 
TypeError: Error #1010: A term is undefined and has no properties.
at NS_fla::MainTimeline/vzdalenosti_bodu()
at NS_fla::MainTimeline/hlaska_zmacknul_sem()
...

请怀疑任何人是什么导致了这个问题?

谢谢你的回答。

如果它只跟踪"test01"一次,那么问题就不会来自if(w!=k)范围内的任何东西,因为第一次w=k=0。如果您的MAX_w和MAX_k为 0,则问题将来自循环之后。无论如何,问题不在于w或k,我认为需要更多的代码来解决这个问题。BTW:为什么是数字而不是整数?

根据运行时错误参考:

如果您尝试访问不存在的对象的属性,则会发生此错误。例如:

var obj:Object = new Object();
obj.a = "foo";
trace(obj.b.prop);

由于拼写错误,您还可以看到此错误,例如在下面,其中 mc 表示显示列表中的 MovieClip 对象,并且舞台属性拼写错误,大写 S(它应该是舞台):

trace(mc.Stage.quality);

所有错误都在这里 - http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/runtimeErrors.html

相关内容