actionscript-3flex3filterfunction

How can I get list of properties in an object in Actionscript?


I have a dataprovider and a filterfunction for my array that's assigned to my dataprovider.

How can I get a list of the properties that are in each row of the dataprovider (item.data) as it gets passed to the filterfunction?

For instance, if my object contained:

Then I would want, in my filterfunction to be able to look at name, email and address. Unfortunately, I don't know what these properties will be before hand.

Any ideas?


Solution

  • If it's a dynamic object I believe you can just do something like this:

    var obj:Object; // I'm assuming this is your object
    
    for(var id:String in obj) {
      var value:Object = obj[id];
    
      trace(id + " = " + value);
    }
    

    That's how it's done in AS2, and I believe that still works for dynamic objects in AS3. I think the properties that it will show is more limited on non-dynamic objects.