Alle rekursive Ansatzlösungen zum Lösen von Array zu Objekt/s (innerhalb Array) in Plain JS (keine Bibliotheken). Grundsätzlich möchte ich die gleiche Funktion an sich senden. Zu diesem Zeitpunkt überschreibe ich das Objekt mit der letzten Iteration. i erhalten:Array von Arrays zu Objekt RECURSIVELY in Plain JS
{firstName: "Sallito", lastName: "Jordan", age: 16, role: "server"}
während ich bekommen soll:
[
{firstName: 'Eren', lastName: 'Duran', age: 22, role: 'admin'},
{firstName: 'Sallito', lastName: 'Jordan', age: 16, role: 'server'}
]
Das ursprüngliche Array ist:
var array = [
[
['firstName', 'Eren'], ['lastName', 'Duran'], ['age', 22], ['role', 'admin']
],
[
['firstName', 'Sallito'], ['lastName', 'Jordan'], ['age', 16], ['role', 'server']
]
];
meine aktuelle so weit Lösung ist:
function transformData(array) {
var obj = {};
for(var i = 0; i < array.length; i++){
for(var j = 0; j < array[i].length; j++){
for(var k = 0; k < array[i][j].length; k++){
if(k === 0){
var currentKey = array[i][j][k];
var currentValue = array[i][j][k + 1];
obj[currentKey] = currentValue;
}
}
}
}
return obj;
}
Bitte bieten Sie j an rekursive Ideen, da ich weiß, wie man es mit forEach und map.reduce macht. Ich möchte wirklich Rekursivität lernen. Vielen Dank!
bitte fügen Sie die Originaldaten hinzu. –
..oder wenn keine rekursiven Lösungen ... dann: Wie überschreibe ich nicht mein Obj, sondern füge das neue Objekt dem alten zum Array hinzu? –
Nina, alles ist hier ... das erwartete Ergebnis, mein Code und das Ergebnis, das ich bekomme. Vermisst wurde: [ [ ['Vorname', 'Eren'], ['Nachname', 'Duran'], ['Alter', 22], ['Rolle', 'admin'] ], [ ] ['Vorname', 'Sallito'], ['Nachname', 'Jordan'], ['Alter', 16], ['Rolle', 'Server'] ] ] // Entschuldigung! –