Hacker News new | ask | show | jobs
by tlrobinson 6166 days ago
Yeah I don't know why the author expected any reasonable behavior from using a string as an array index.

However, the same behavior is true of plain Objects.

1 comments

I used [] because I hoped it would correctly handle number indices. But, I originally used {}. The auto-stringification of the keys was my complaint.
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...