Ich habe ein Array var cars = [2,3,..]
die ein paar ganze Zahlen enthält. Ich habe ein paar Werte zu dem Array hinzugefügt, aber ich muss jetzt dieses Array an eine Seite über jQuery's senden .get
Methode. Wie kann ich es in ein JSON-Objekt umwandeln, um es zu versenden?
Antworten
Zu viele Anzeigen?Sie können ein Array mit der Funktion Object.assign in JSON konvertieren. Das Hauptproblem, auf das ich dabei stoße, ist, dass Javascript-Arrays einen nullbasierten Integer-Schlüssel haben, der wiederum den Zugriff auf die Daten im Array ermöglicht.
let fruits = ['Apple', 'Banana']
document.write(fruits[0])
Rückgabe:
Apfel
Wenn Sie das Array in JSON konvertieren, erhalten Sie
{"0": "Apple", "1: "Banana"}
JSON-Objekte hingegen enthalten in der Regel beliebige Schlüssel, wie z. B.:
{ "irgendein_Schlüssel": "irgendein Wert", "anderer_Schlüssel": "some other value" }
Glücklicherweise können Sie eine Liste von Elementen erstellen, die ziemlich genau wie ein Array funktioniert, und dann Object.assign verwenden, als ob es ein Array wäre, und dann die Ausgabe in ein JSON-Objekt konvertieren
var items = {};
items["some_key"]="some value";
items["other_key"]="some other value";
const jsonString = JSON.stringify(Object.assign({}, items))
const json_obj = JSON.parse(jsonString);
Der Vorteil der Arbeit mit Artikellisten ist, dass Sie nicht mit den JSON-Daten als String oder Anführungszeichen, Kommas usw. umgehen müssen. Sie können stattdessen einfach das Item-Objekt verwalten, indem Sie Daten einfügen oder entfernen. Wenn Sie fertig sind, konvertieren Sie einfach die Item-Variable in ein JSON-Objekt und tun, was immer Sie damit tun müssen.
- See previous answers
- Weitere Antworten anzeigen
0 Stimmen
J
0 Stimmen
I
0 Stimmen
s