actionscript (flex): how to know whether a propert

2019-04-03 10:53发布

问题:

I am a Java developer who tries Flex. Here is my problem:

I behave actionScript objects as hashmap but when the object do not have the property it gives exception: No such variable.

Here I expect it gave me null, instead of giving exception. So do you know is there a way to handle it, namely check if the property is defined for object.

trace( obj["2008-02"] ) // gives exception

回答1:

Use something along the lines of

if (myObject.hasOwnProperty("propertyName"))

to check if the property exists.

Edit: Also take a look here.



回答2:

hasOwnProperty() doesn't work correctly with inheritance, static properties, or dictionaries.

You should use

if ("propertyName" in myObject)

instead.



回答3:

try

if ( obj["2008-02"] != null ) { then do something }

it is null, but you can't output null. you can also try converting it to a string for the purposes of a trace().