Сделать перебирабельную структуру на основе Object с определенными переменными
MyObject наследует Object
Код AS3:
package {
dynamic public class MyObject extends Object {
public var name:String;
public var desc:String;
public var x:int;
public var y:int;
public function MyObject(data:Object) {
for (var key:String in data) {
this[key] = data[key];
this.setPropertyIsEnumerable(key, true) // не помогает
}
}
}
}
конструктор MyObject принимает Object
Код AS3:
var key:String;
var obj:Object = {name: "house", desc: "big stone thing", x: 2, y: 3, customProperty: "yay!"}
var myObj:MyObject = new MyObject(obj)
for (key in obj) {
trace("Object: "+ key+" - "+obj[key]);
}
for (key in myObj) {
trace("MyObject: "+ key+" - "+myObj[key]);
}
вот трэйс
Код:
Object: customProperty - yay!
Object: desc - big stone thing
Object: x - 2
Object: name - house
Object: y - 3
MyObject: customProperty - yay!
Почему не перебираются определенные переменные в MyObject?
|