JavaScript: Umwandlung Array-Objekt
Ich versuche, zu konvertieren eines Arrays in ein Objekt, und ich bin fast da.
Hier ist mein input array:
[ {id:1,name:"Paul"},
{id:2,name:"Joe"},
{id:3,name:"Adam"} ]
Hier ist meine aktuelle-Ausgabe-Objekt:
{ '0': {id:1,name:"Paul"},
'1': {id:2,name:"Joe"},
'2': {id:3,name:"Adam"} }
Hier ist meine gewünschte Ausgabe-Objekt:
[ {id:1,name:"Paul"},
{id:2,name:"Joe"},
{id:3,name:"Adam"} ]
Hier ist mein Derzeitiger code:
function toObject(arr) {
var rv = {};
for (var i = 0; i < arr.length; ++i)
if (arr[i] !== undefined) rv[i] = arr[i];
return rv;
}
- Das gewünschte Ergebnis ist eine ungültige json
- Das gewünschte format ist nicht supportd in ECMA5, muss jedes Objekt eine Kennung, wie in Ihrer aktuellen Ausgabe
- Die Frage ist, warum tun Sie müssen Ihre Daten in einer solchen form?
- Nur eine Frage. Warum ?:)
- sorry, ich aktualisierte meine gewünschte Ausgabe-format, prüfen Sie bitte jetzt
- Die Eingabe und die gewünschte Ausgabe ist die gleiche.
- uups sorry, du hast Recht jetzt habe ich es herausgefunden
- Nur -1ed, da output=input. Die Frage macht keinen Sinn. Bitte schließen/entfernen, die Frage, ob es nicht von Bedeutung
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie nicht tun.
Ist keine gültige JavaScript-Objekt.
Objekte in javascript sind Schlüssel-Wert-Paare. Sehen Sie, wie Sie
id
und dann ein Doppelpunkt und dann eine Zahl? Diekey
istid
und die Zahl dervalue
.Hätten Sie keine Möglichkeit zum Zugriff auf die Eigenschaften, wenn Sie dies Tat.
Hier ist das Ergebnis aus der Firefox Konsole:
Da die Objekte benötigen einen Schlüssel - /Wert-paar, Sie konnte erstellen ein Objekt mit der ID als key und dem Namen, wie der Wert:
Ausgabe: