l'array in js si comporta come vorresti solo quando usi una coppia chiave numerica / valore
la sua proprietà length è limitata a questo tipo di elementi
oltre a permetterti una notazione del tipo
a['chiave'] = 'valore'
ti permette anche l'uso della notazione ad oggetti
a.chiave = 'valore';
non a caso un typeof di un array dà 'Object'

Rispondi quotando