Bei dem Array hast du die Daten gesammelt, was mit ihnen passiert, steht aber an ganz anderer Stelle (in der Schleife).
Das ist doch ein potenzieller Vorteil: Man hat einmal deklarativ die Zuordnungen. Die kann man als JSON (oder in sonst einem Format) speichern, erzeugen, verarbeiten, übertragen, auswechseln. Und einmal die Verarbeitungslogik, die ein gewisses Schema voraussetzt, sonst aber flexibel ist.
Dafür erfindet man in anderen Anwendungsfällen extra DSLs (domain-specific languages), eben um Sachverhalte deklarativ notieren zu können. JSON bietet sich da ohnehin an.
Für mich unnötig verkomplizierter Code.
Es ist letztendlich flexibler. Wenn man es braucht und es einem nützt, ergibt das schon Sinn.
Mathias