2013-04-21 77 views
0

AS3编译器指出直接通过XML对象访问属性是错误的。这是遗留的(AS2)代码还是应该用AS3编译器工作正常?我被告知在AS3内部支持E4X,允许直接访问财产。在AS3中访问XML对象可能未定义的属性?

我在Windows 7上使用FlashDevelop 4,Flex 4.5.1和AIR 3.0进行编译。我有-swf-version=13集,我正在编译“严格模式”。代码来自成熟的AS3库,并且应该可以编译。我究竟做错了什么?

var node:XML; 
var n:String = [email protected]; // Access of possibly undefined property "name" through .. XML 

编辑:这是不是运行时错误它说,因为变量为空,它是一个编译时错误,并防止项目编译我无法访问的属性。它的AS3编译器拒绝允许编译XML对象中的直接属性访问。

回答

0

但是你的node在这段代码中是undefined/null!你应该得到«无法访问空对象引用的属性或方法»错误! 如果你初始化了node,那么......你有没有试过清理该项目并重新构建它? (它有时候确实有帮助)

0

变量声明的默认值为空,例如Sprite,XML,Array,Vector等。 您无法访问任何空对象的属性。

+0

它不是...更新的问题。 – 2013-04-22 14:47:51