Duplicar posibles:
In javascript how can we identify whether an object is a Hash or an Array?Distinguir entre matriz y de hash en javascript con typeof()
en JavaScript
typeof([])
y
typeof({})
ambos devuelven "objeto".
¿Cómo puedo distinguir de manera confiable entre una matriz y una matriz asociativa en Javascript?
he pensado en probar el objeto en cuestión para ver si tiene el atributo "longitud" (lo que indica que sería una matriz), pero lo que a continuación, el siguiente también sería visto como una matriz:
{length:5}
Erm, creo que ya has retrocedido. Los objetos JS normales son matrices asociativas. Son matrices reales que no existen en javascript. Una matriz en js es un objeto con azúcar para que parezca una matriz real (la propiedad de longitud más notable, que simplemente devuelve 1 + el campo numérico más alto almacenado en el objeto). – beldaz