18

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

enesness
  • 3,123
  • 5
  • 31
  • 33

3 Answers3

30

Use something along the lines of

if (myObject.hasOwnProperty("propertyName"))

to check if the property exists.

Edit: Also take a look here.

Dimitar Dimitrov
  • 16,032
  • 5
  • 53
  • 55
1

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

You should use

if ("propertyName" in myObject)

instead.

Community
  • 1
  • 1
BlueRaja - Danny Pflughoeft
  • 84,206
  • 33
  • 197
  • 283
0

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().

Ryan Guill
  • 13,558
  • 4
  • 37
  • 48