Objekt zu json hinzufügen

lano

Aktives Mitglied
Moin.

Angenommen ich hab son json
Javascript:
{
  "pid": "chan",
  "hide": {
    "ssoSet": true,
    "liveTv": true
  },
  "time": [],
  "data": {
    "use_auto_update": false,
    "bridge_mode": "",
    "5ghz": {
    "currentWlanMode": "",
    "wlanModes": [
      {
        "value": "53",
        "text": "802.11n+ac (Wi-Fi 5)"
      },
      {
        "value": "52",
        "text": "802.11a+n (Wi-Fi 4)"
      }
    ]
    }
  }
}

wie kann ich denn jetzt noch ein wlanModes hinzufügen ?

Javascript:
var str = responseBody;

var obj = str.data.5ghz.wlanModes;
var data = { "value": "53", "text": "802.11n+ac (Wi-Fi 5)" };

obj.push(data);

return str;

ich habs so versucht aber es scheint nicht zu klappen.
 
Musst du responseBody per JSON.parse erst einmal von einem String zu einem JS Objekt machen?
 
Ah ok.
also so:
Javascript:
var data = JSON.parse(responseBody);

// hinzufügen

var ret = JSON.stringify(data);
return ret;
 
Japp. Hatte das so im Hinterkopf. Ist dasselbe.
Javascript:
var obj = JSON.parse(responseBody)
obj.data.5ghz.wlanModes.push({ "value": "53", "text": "802.11n+ac (Wi-Fi 5)" });
return JSON.stringify(obj);
 
Japp. Hatte das so im Hinterkopf. Ist dasselbe.
Javascript:
var obj = JSON.parse(responseBody)
obj.data.5ghz.wlanModes.push({ "value": "53", "text": "802.11n+ac (Wi-Fi 5)" });
return JSON.stringify(obj);

Funktioniert das wirklich mit einer Zahl am Anfang eines Identifikators obj.data.5ghz.wlanModes.push? :unsure:

Hätte sonst str.data["5ghz"].wlanModes.push({...}) vorgeschlagen
 
Zurück
Oben Unten