I tiene un objeto (un "array asociado", también conocido como un objeto Javascript llano):iterar sobre objetos en CoffeeScript
obj = {}
obj["Foo"] = "Bar"
obj["bar"] = "Foo"
y necesito iterar sobre ella usando CoffeeScript. Ahora, haciendo de esta manera:
for elem in obj
no funciona porque obj.length es 0, que utiliza el código de la compilación js. En Javascript normal, me acaba de hacer
for(var key in obj)
pero ahora me pregunto: ¿cómo puedo hacer esto en CoffeeScript?
"matrices" en JavaScript/CoffeeScript son objetos especiales con índices numéricos y un 'propiedad length' eso simplemente se refiere al índice numérico más alto (más 1). Lo que quieres es solo un "objeto": 'obj = {}'. Las matrices son objetos, pero no hay razón para usar uno en su ejemplo. –
¡Buen punto, Trevor! He modificado la pregunta para que sea un poco menos engañosa/confusa en este sentido. –