天天看点

as3 中的 dynamic Class

as3中只有dynamic class 中的dynamic definitions才可以被枚举(就是for in ),

dynamic class DynamicClass

{

  public var variable:String = "value";

  public function method():void {}

  public function DynamicClass()

  {

  }

}

但是上面的这个类是不能被枚举的,只有是被动态添加的属性才能被枚举,

dynamic class DynamicClass

{

  public var variable:String = "value";

  public function method():void {}

  public function DynamicClass()

  {

   this.var1 = '123';

  }

}

上面的类中var1可以被枚举出来,还有可以用 setPropertyIsEnumerable方法,可以控制某个属性是否可枚举,但它只对dynamic属性有效,比如设置this.setPropertyIsEnumerable("var1 ", false);这样var1就不能被枚举了