An Array is an Object, but an Object is not (always) an Array.
An Array has methods and properties not present in every object
Example
[].length //0
{}.length //undefined
typeof []['slice'] //function
typeof {}['slice'] //undefined
If you use an array as a hashmap and try to use as a key something already present you will get into trouble