NEWS
JSON parsen mit "." in Name (PM2.5)
-
Hallo!
Wie parse ich ein JSON mit "." in Name (PM2.5)? ", ', , \ hat alles nicht funktioniert.
"BME280.Pressure" funktioniert prächtig.Das JSON sieht so aus:
{ "Time": "2024-08-17T17:20:06", "BME280": { "Temperature": 28.6, "Humidity": 41.3, "DewPoint": 14.2, "Pressure": 939.6 }, "VINDRIKTNING": { "PM2.5": 9 }, "PressureUnit": "hPa", "TempUnit": "C" }
Vielen Dank für jeden Tipp
Gruss,
Peter -
@pehon
Nicht schön, aber selten -
Mit dem tollen JSONATA gehts natürlich auch (ohne das Objekt zu modifizieren):
-
@codierknecht
Herzlichen Dank, funktioniert! -
@pehon Hatten wir hier auch schon: https://github.com/ioBroker/ioBroker.javascript/issues/1647
Ist mit der aktuellen Syntax so nicht lösbar und müsste erweitert werden. Abgesehen von Workarounds wie oben vorgeschlagen.
-
@pehon sagte in JSON parsen mit "." in Name (PM2.5):
{
wenn im attributnamen illegale Zeichen enzhalten sind, dann kann man keine Punktnotation machen und muss auf die alternativ adressierung ausweichen.
VINDRIKTNING["PM2.5"]
-
@oliverio sagte in JSON parsen mit "." in Name (PM2.5):
VINDRIKTNING["PM2.5"]
Bei Blockly funktioniert das aber nicht.
Deswegen wurde das Issue ja wahrsscheinlich eröffnet.
-
@oliverio sagte in JSON parsen mit "." in Name (PM2.5):
wenn im attributnamen illegale Zeichen enzhalten sind, dann kann man keine Punktnotation machen und muss auf die alternativ adressierung ausweichen.
Aber nicht mit der
getAttr
-Funktion in der JavaScript-Sandbox. Dort ist das aktuell nicht vorgesehen. Siehe verlinkter Issue oben.