Ich habe ein Objekt im JSON-Format, das ich aus einer JSON-Datei gelesen habe, die ich in einer Variablen namens teamJSON habe. Das sieht folgendermaßen aus:
{"theTeam":[{"teamId":"1","status":"pending"},{"teamId":"2","status":"member"},{"teamId":"3","status":"member"}]}
Ich möchte dem Array ein neues Element hinzufügen, z
{"teamId":"4","status":"pending"}
am Ende mit
{"theTeam":[{"teamId":"1","status":"pending"},{"teamId":"2","status":"member"},{"teamId":"3","status":"member"},{"teamId":"4","status":"pending"}]}
bevor Sie in die Datei zurückschreiben. Was ist ein guter Weg, um das neue Element hinzuzufügen? Ich kam näher, aber alle doppelten Anführungszeichen wurden entkommen. Ich habe nach einer guten Antwort auf SO gesucht, aber keine deckt diesen Fall ganz ab. Jede Hilfe wird geschätzt.
javascript
json
Charles Wyke-Smith
quelle
quelle
yourObj.theTeam.push({"teamId":"4","status":"pending"});
teamJSON
Variable? Ist es eine JSON-Zeichenfolge'{"theTeam":[...]}'
oder ein tatsächliches Objektliteral? Hinweis: Verwenden Sieconsole.log(typeof teamJSON)
Antworten:
JSON ist nur eine Notation ; Um die gewünschte
parse
Änderung vorzunehmen, können Sie die Änderungen auf ein natives JavaScript-Objekt und dannstringify
zurück auf JSON anwendenquelle
teamJSON
. Zu keinem Zeitpunkt wird eine Saite erwähntWenn Sie an der letzten Position hinzufügen möchten, verwenden Sie Folgendes :
Wenn Sie an der ersten Position hinzufügen möchten, verwenden Sie den folgenden Code:
Jeder, der an einer bestimmten Position eines Arrays hinzufügen möchte, versucht dies:
Der obige Codeblock fügt nach dem zweiten Element ein Element hinzu.
quelle
Zuerst müssen wir das JSON-Objekt analysieren und dann können wir ein Element hinzufügen.
Schließlich JSON.stringify das Objekt zurück zu JSON
quelle
Hier ist beispielsweise eine elementähnliche Schaltfläche zum Hinzufügen eines Artikels zum Warenkorb und entsprechende Attribute zum Speichern in localStorage.
Nach dem Hinzufügen eines JSON-Objekts zum Array-Ergebnis (in LocalStorage):
[{"id": "99", "nameEn": "Product Name1", "price": "767", "image": "1462012597217.jpeg"}, {"id": "93", "nameEn" : "Produktname2", "Preis": "76", "Bild": "1461449637106.jpeg"}, {"ID": "94", "NameEn": "Produktname3", "Preis": "87" , "image": "1461449679506.jpeg"}]
Nach dieser Aktion können Sie Daten einfach als Liste in Java an den Server senden
Das vollständige Codebeispiel finden Sie hier
Wie lagere ich einen einfachen Einkaufswagen mit localStorage?
quelle
In meinem Fall hatte mein JSON-Objekt kein vorhandenes Array, daher musste ich zuerst ein Array-Element erstellen und dann das Element verschieben.
quelle