Faster to access numeric property by string or integer?
javascript, performance
Solution
Unsurprisingly, integers are faster for array access than strings. Perhaps surprisingly, they are also faster than strings for object properties.
http://jsperf.com/string-vs-integer-array-indices
http://jsperf.com/string-vs-integer-object-indices
Problem
In JavaScript you can get and set indexes of arrays and "numeric" properties of objects using either an integer or a string and get the same results: ``` var a=[], o={}; a[1] = "foo"; a["1"] == "foo" // true a["2"] = "bar"; a[2] == "bar" // true a["-3"] = "baz"; a[-.3e1] == "baz" // true o[1] = "foo"; o["1"] == "foo" // true o["2"] = "bar"; o[2] == "bar" // true o["-3"] = "baz"; o[-.3e1] == "baz" // true ``` While strings and numbers are interopable—for both getting and setting—which is faster (for both arrays and for objects)?