在AS3中访问XML对象的可能未定义的属性?

时间:2013-04-21 19:54:34

标签: xml actionscript-3 compiler-errors

AS3编译器说直接通过XML对象访问属性是错误的。这是遗留(AS2)代码还是应该可以在AS3编译器中正常工作?我被告知在AS3中支持E4X,允许直接访问属性。

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

var node:XML;
var n:String = node.@name; // Access of possibly undefined property "name" through .. XML

编辑:这是运行时错误,表示我无法访问属性,因为该变量为null,其编译时错误< / strong>,并阻止项目的编译。它的AS3编译器拒绝在XML对象中编译直接属性访问。

2 个答案:

答案 0 :(得分:0)

但是此代码中的node未定义/ null!你应该得到«无法访问空对象引用的属性或方法»错误! 如果您初始化node,那么......您是否尝试过清理项目并再次构建它? (有时候它确实有帮助)

答案 1 :(得分:0)

在变量声明中,对象的默认值为null,即Sprite,XML,Array,Vector等。 并且您无法访问null对象的任何属性。