Sono in qualche modo confuso:per (... in ...) che non funziona con serie
Ho una lista di comandi come questo:
var commands = [{"command": "read"}, {"command": "write"}, {"command": "login"}];
Se provo l'accesso uno dei comandi come questo funziona:
console.log(commands[0]["command"]); // Output is "read"
console.log(commands[0].command); // Output is "read"
Ma se provo questo l'uscita è sempre definito:
for(command in commands)
console.log(command["command"]); // undefined, undefined, undefined
Se i comandi variabile è json, si potrebbe anche fare questo http://jsfiddle.net/aMTTU/ –
Nonostante alcune delle risposte qui sotto, non 'for-in' una matrice. È lo strumento sbagliato per il lavoro in JavaScript. Un ciclo 'for' o il metodo' forEach' assicura solo indici numerici in un ordine garantito e non blocca la possibilità di estendere 'Array.prototype' se si sceglie. – user113716