Re:Silly Javascript
by s3graham on Saturday July 25, 2009 @05:09PM
(#723682)
I used [] because I hoped it would correctly handle number indices. But, I originally used {}. The auto-stringification of the keys was my complaint.
[ Parent
| on HN ]
All keys are strings :/
What you're complaining about is similar to complaining that
"hello " + 3 + " world" == "hello " + "3" + " world"
When assigning a String with a numeric value I think JavaScript treats it as a numeric for an Array and a String for regular Objects. This doesn't really change the difference, just that an Array should hold numerical index values (vs an Object key, but they CAN hold regular keys since they are an Object). A bit confusing I guess...