Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. getState - warning log / JS Dokumentation

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.6k

getState - warning log / JS Dokumentation

Scheduled Pinned Locked Moved JavaScript
17 Posts 5 Posters 2.0k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    SaschaS
    wrote on last edited by
    #5

    Irgendwas passt da nicht zusammen.
    Ich gehe davon aus, dass beim obigen Code in der Zeile

    var myState = $('state[state.id=stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZEN]');
    

    ein 'state' zu viel drin ist. Denn mit der Zeile

    console.log($('state[id=stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.]'));
    

    erhalte ich:

    18:40:38.156	info	javascript.0 (13463) script.js.Tests.Statusabfrage: {'0':'stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.ABTAUEN_VERDAMPFER','1':'stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZEN','2':'stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.SCHALTPROGRAMM_AKTIV','length':3}
    

    Allerdings passt das nicht zu der Anzahl der states auf dem Bild... Ich erkenne keine Logik..
    006df1bc-3ae3-4d47-bae1-dd11ff7f30c1-image.png

    1 Reply Last reply
    0
    • T Do not disturb
      T Do not disturb
      ticaki
      wrote on last edited by ticaki
      #6

      Ich muß jetzt mal kurz meinem Ärger Luft machen, dass alles was man nicht testet auch nicht so funktioniert wie man erhofft. :)

      Jetzt gehts:

      var myState = $('state[state.id=javascript.0.test5.0.test]');
      if (myState['length'] > 0) {
        console.log('da');
      } else {
        console.log('weg');
      }
      

      Die 2 Bedingung in if ist unnötig.
      Sry, hab dir bestimmt unnötige arbeit gemacht. :)

      Zu deinen weiteren Anmerkungen hab ich mich noch nicht tief genug eingearbeitet. Diese Selektor werden dafür verwendet "Arrays" bzw. Json von Objekten zu bekommen.
      z.B

      $('state[state.id=javascript.0.test5.0.*]');
      

      gibt dir alles unterhalb von ...test5.0.

      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

      Spenden

      1 Reply Last reply
      0
      • S Offline
        S Offline
        SaschaS
        wrote on last edited by
        #7

        @ticaki Danke, dass du dir das noch einmal angeschaut hast. Brauchst dir aber keine Vorwürfe machen. Ich hab in der Zeit einiges dazugelernt.

        Muss dennoch noch einmal einhaken.

        @ticaki said in getState - warning log / JS Dokumentation:

        Zu deinen weiteren Anmerkungen hab ich mich noch nicht tief genug eingearbeitet. Diese Selektor werden dafür verwendet "Arrays" bzw. Json von Objekten zu bekommen.
        z.B
        $('state[state.id=javascript.0.test5.0.*]');

        gibt dir alles unterhalb von ...test5.0.

        Bei mir stimmt das nicht. Mit

        console.log($('state[id=stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.]'));
        

        oder

        console.log($('state[id=stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.*]'));
        

        sollte ich ja erhalten:
        992e7df2-1e9f-407f-99b3-6bb9d2dba92c-image.png

        Ich erhalte aber lediglich:

        07:31:21.722	info	javascript.0 (13463) script.js.Tests.Statusabfrage: {'0':'stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.SCHALTPROGRAMM_AKTIV','length':1}
        

        Und gestern Abend habe ich mit selbiger Abfrage mehr erhalten:

        18:40:38.156 info javascript.0 (13463) script.js.Tests.Statusabfrage: {'0':'stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.ABTAUEN_VERDAMPFER','1':'stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZEN','2':'stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.SCHALTPROGRAMM_AKTIV','length':3}
        
        1 Reply Last reply
        0
        • T Do not disturb
          T Do not disturb
          ticaki
          wrote on last edited by
          #8

          Da muß ich passen, bei mir geht es in jedem von mir getesteten Zweig mit diesen beiden und zeigt auch den richtigen Inhalt an. Ist es möglich das die States garnicht existieren? Hast du unmittelbar um den Test herum ein Reload des Objekttab gemacht?

          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

          Spenden

          S 1 Reply Last reply
          0
          • C Offline
            C Offline
            CruziX
            wrote on last edited by CruziX
            #9

            Das sollte glaube auch so gehen

            let exists = $(idVomDp);
            

            Müsste dann false sein, wenn er nicht vorhanden ist.
            bzw. prüfe ich dann immer
            if(!exists) {}

            1 Reply Last reply
            0
            • AlCalzoneA Offline
              AlCalzoneA Offline
              AlCalzone
              Developer
              wrote on last edited by
              #10

              Hallo zusammen, nehmt doch einfach existsState(id) :)

              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

              C S T 3 Replies Last reply
              3
              • AlCalzoneA AlCalzone

                Hallo zusammen, nehmt doch einfach existsState(id) :)

                C Offline
                C Offline
                CruziX
                wrote on last edited by
                #11

                @AlCalzone sagte in getState - warning log / JS Dokumentation:

                existsState

                Die Funktion gibt es?
                Ist gar nicht in der Doku beschrieben

                AlCalzoneA 1 Reply Last reply
                0
                • C CruziX

                  @AlCalzone sagte in getState - warning log / JS Dokumentation:

                  existsState

                  Die Funktion gibt es?
                  Ist gar nicht in der Doku beschrieben

                  AlCalzoneA Offline
                  AlCalzoneA Offline
                  AlCalzone
                  Developer
                  wrote on last edited by
                  #12

                  @CruziX Ja gibt es. Sollte eigentlich auch im Dropdown für autocomplete auftauchen:

                  	/**
                  	 * Checks if the state with the given ID exists
                  	 */
                  	function existsState(id: string): boolean;
                  	/**
                  	 * Checks if the object with the given ID exists
                  	 */
                  	function existsObject(id: string): boolean;
                  

                  Wenn sie nicht in der Doku steht, ist natürlich doof.

                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                  C 1 Reply Last reply
                  0
                  • AlCalzoneA AlCalzone

                    @CruziX Ja gibt es. Sollte eigentlich auch im Dropdown für autocomplete auftauchen:

                    	/**
                    	 * Checks if the state with the given ID exists
                    	 */
                    	function existsState(id: string): boolean;
                    	/**
                    	 * Checks if the object with the given ID exists
                    	 */
                    	function existsObject(id: string): boolean;
                    

                    Wenn sie nicht in der Doku steht, ist natürlich doof.

                    C Offline
                    C Offline
                    CruziX
                    wrote on last edited by
                    #13

                    @AlCalzone Das ist natürlich praktisch ^^
                    Wo kann man denn die Funktionen im Code direkt ansehen?

                    AlCalzoneA 1 Reply Last reply
                    0
                    • C CruziX

                      @AlCalzone Das ist natürlich praktisch ^^
                      Wo kann man denn die Funktionen im Code direkt ansehen?

                      AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      wrote on last edited by
                      #14

                      @CruziX Diese Datei enthält die Definitionen für Auto-Complete und Syntax-Check:
                      https://github.com/ioBroker/ioBroker.javascript/blob/master/lib/javascript.d.ts
                      Interessant wird es ab https://github.com/ioBroker/ioBroker.javascript/blob/5055cc9cb5e017c37eb9a64f0084e2a76fba26f2/lib/javascript.d.ts#L537

                      Die Funktionen selbst kannst du dir hier anschauen (sandbox-Objekt):
                      https://github.com/ioBroker/ioBroker.javascript/blob/5055cc9cb5e017c37eb9a64f0084e2a76fba26f2/lib/sandbox.js#L452

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      1 Reply Last reply
                      1
                      • T ticaki

                        Da muß ich passen, bei mir geht es in jedem von mir getesteten Zweig mit diesen beiden und zeigt auch den richtigen Inhalt an. Ist es möglich das die States garnicht existieren? Hast du unmittelbar um den Test herum ein Reload des Objekttab gemacht?

                        S Offline
                        S Offline
                        SaschaS
                        wrote on last edited by
                        #15

                        @ticaki Der Cache des Browers hat mich in die Irre geführt.

                        1 Reply Last reply
                        0
                        • AlCalzoneA AlCalzone

                          Hallo zusammen, nehmt doch einfach existsState(id) :)

                          S Offline
                          S Offline
                          SaschaS
                          wrote on last edited by
                          #16

                          @AlCalzone said in getState - warning log / JS Dokumentation:

                          Hallo zusammen, nehmt doch einfach existsState(id) :)

                          Die macht das Leben so viel einfacher. Die kannte ich in der Tat noch nicht..Genial :-)

                          1 Reply Last reply
                          0
                          • AlCalzoneA AlCalzone

                            Hallo zusammen, nehmt doch einfach existsState(id) :)

                            T Do not disturb
                            T Do not disturb
                            ticaki
                            wrote on last edited by
                            #17

                            @AlCalzone
                            Danke

                            Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                            Spenden

                            1 Reply Last reply
                            0
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            736

                            Online

                            32.5k

                            Users

                            81.7k

                            Topics

                            1.3m

                            Posts
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Login

                            • Don't have an account? Register

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Home
                            • Recent
                            • Tags
                            • Unread 0
                            • Categories
                            • Unreplied
                            • Popular
                            • GitHub
                            • Docu
                            • Hilfe