Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. JSON - mal wieder

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    JSON - mal wieder

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @Gukerl last edited by Homoran

      @gukerl mangels Adapter-DP eine Variable mit dem I halt:
      Screenshot_20250207-095412_Firefox.jpg

      und
      Screenshot_20250207-095633_Firefox.jpg

      1 Reply Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @Gukerl last edited by Codierknecht

        @gukerl sagte in JSON - mal wieder:

        Ich hab schon viele Variationen probiert, nichts klappt

        Du hast die "richtige" Variante vergessen: Indizes in JSON-Arrays beginnen bei 0.

        Wie @Homoran schon schrieb: Das funzt einwandfrei:

        e3458b79-e0f7-4f87-afdb-185479549eb0-image.png

        Vom Shelly bekomme ich diesen JSON im Datenpunkt:

        Das wiederum ist kein Array. Also wird ohne Index gelesen:

        JSON.parse(val).tC
        

        Ich persönlich würde mir da passende Alias-DP anlegen und mit der Lesekonvertierung die Werte aus dem JSON holen.

        8922e98b-e2da-4f85-aa3f-7f6873287214-image.png

        Homoran 2 Replies Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @Codierknecht last edited by

          @codierknecht sagte in JSON - mal wieder:

          Ich persönlich würde mir da passende Alias-DP anlegen und mit der Lesekonvertierung die Werte aus dem JSON holen.

          rischtisch, aber hier geht's um Blockly.

          Oftmals sind solche Dinge, die auch anders lösbar sind, dazu da um sich mit Blockly vertraut zu machen

          1 Reply Last reply Reply Quote 1
          • Codierknecht
            Codierknecht Developer Most Active last edited by Codierknecht

            @Gukerl
            Zum Ausprobieren hilft das hier: https://jsonpathfinder.com/

            Der sagt Dir auch gleich, wie einzelne Elemente anzusprechen sind.

            ba8232ea-d3d1-431d-bd38-5d7ac01e73da-image.png

            1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators @Codierknecht last edited by

              @codierknecht sagte in JSON - mal wieder:

              Das wiederum ist kein Array. Also wir ohne Index gelesen:

              Editör!

              Deswegen hatte ich die Seite von jsonviewer.stack.hu gezeigt auf der man schön die Struktur sehen kann.

              Codierknecht 1 Reply Last reply Reply Quote 0
              • Codierknecht
                Codierknecht Developer Most Active @Homoran last edited by

                @homoran sagte in JSON - mal wieder:

                Editör!

                Sorry 😯

                Macht der jsonpathfinder auch. Netterweise zeigt der auch gleich (fast) die richtige Syntax für den Zugriff 😉

                Jeder hat da halt so seine Vorlieben 🙂

                G 1 Reply Last reply Reply Quote 0
                • G
                  Gukerl @Codierknecht last edited by

                  Ich hab jetzt ChatGPT befragt, wie denn die KI das auflöst, so stehts im Datenpunkt:

                  {
                    "id": 100,
                    "tC": 17.1,
                    "tF": 62.8
                  }
                  

                  Klappt nicht, der https://jsonviewer.stack.hu/ zeigt keinen Index.

                  const jsonString = '{ "id": 100, "tC": 18.5, "tF": 65.3 }';
                  
                  // Parse the JSON string
                  const jsonData = JSON.parse(jsonString);
                  
                  // Extract the value of tC
                  const temperatureCelsius = jsonData.tC;
                  
                  console.log("Temperature in Celsius:", temperatureCelsius);
                  

                  Ich gebe auf 😕 und frag mich, wofür das ganze JSON Zeig im Blockly denn dann gut sein soll. Nachdem es aber mit JS auch nicht geht...?!?

                  Codierknecht Homoran 4 Replies Last reply Reply Quote 1
                  • Codierknecht
                    Codierknecht Developer Most Active @Gukerl last edited by Codierknecht

                    @gukerl sagte in JSON - mal wieder:

                    zeigt keinen Index

                    Warum auch? Ist ja kein Array.
                    Über einen Index greifst Du auf ein Array mit Objekten zu.

                    Beachte den Unterschied:

                    const jsonString = '{"id": 100, "tC": 18.5, "tF": 65.3}';
                    const jsonArray = '[{"id": 100, "tC": 18.5, "tF": 65.3}, {"id": 101, "tC": 18.9, "tF": 61.2}]';
                    

                    In jsonString steckt ein einzelnes Objekt. Auf dessen Properties kannst Du direkt zugreifen.
                    Das jsonArray ist eine Liste von Objekten. Da muss über den Index angegeben werden, das wievielte Objekt in der Liste gemeint ist.
                    Beachte: Der Index beginnt bei "0"!

                    Edit
                    Ein Array erkennst Du daran, dass "außenrum" eckige Klammern zu finden sind.
                    Wie viele Elemente (Objekte) dann in der Liste stehen, ist egal. Der Zugriff benötigt einen Index - auch bei nur einem einzigen Objekt.

                    1 Reply Last reply Reply Quote 0
                    • Codierknecht
                      Codierknecht Developer Most Active @Gukerl last edited by

                      @gukerl sagte in JSON - mal wieder:

                      Nachdem es aber mit JS auch nicht geht...?!?

                      Der Code funktioniert einwandfrei ... wenn man den Fehler an entscheidender Stelle korrigiert:

                      1616ccb1-1365-447e-b277-275a897ddcf1-image.png

                      G 1 Reply Last reply Reply Quote 0
                      • Codierknecht
                        Codierknecht Developer Most Active @Gukerl last edited by

                        @gukerl sagte in JSON - mal wieder:

                        Ich gebe auf und frag mich, wofür das ganze JSON Zeig im Blockly denn dann gut sein soll

                        Aufgeben ist keine Option 😁

                        c1ae837f-819a-4a72-b6f5-9b42be60e4ed-image.png
                        Es gilt - wie immer: Kaum macht man's richtig, funktioniert's auch 😉 😀

                        1 Reply Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators @Gukerl last edited by

                          @gukerl sagte in JSON - mal wieder:

                          der https://jsonviewer.stack.hu/ zeigt keinen Index.

                          natürlich nicht!
                          ist hier auch nicht drin
                          Screenshot_20250207-095633_Firefox.jpg
                          nur das Attribut selber.

                          @gukerl sagte in JSON - mal wieder:

                          Ich hab jetzt ChatGPT befragt,

                          reichen dir unsere Aussagen und Beispiele nicht?

                          1 Reply Last reply Reply Quote 0
                          • G
                            Gukerl @Codierknecht last edited by Gukerl

                            @codierknecht
                            Oidaaaaaaa.... ICH BIN WIRKLICH BLIND - Asche auf mein Haupt!! Das passiert, wenn man sich ganz woandershin konzentriert.

                            Danke 🙂

                            P.S. Was bedeutet Oidaaaaaa ---> https://www.youtube.com/watch?v=iuXR53ex4iI 😉

                            Codierknecht 1 Reply Last reply Reply Quote 0
                            • Codierknecht
                              Codierknecht Developer Most Active @Gukerl last edited by

                              @gukerl sagte in JSON - mal wieder:

                              Was bedeutet Oidaaaaaa

                              Ich bin des Ausländischen durchaus mächtig 😁 😁

                              1 Reply Last reply Reply Quote 1
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              645
                              Online

                              31.9k
                              Users

                              80.2k
                              Topics

                              1.3m
                              Posts

                              3
                              16
                              594
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo