Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. If State exists

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    If State exists

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @David G. last edited by

      @david-g sagte: Hier die Funktion

      An diese Funktion muss die ID übergeben werden - nicht der Wert. Sie liefert den Wert bei Existenz zurück.

      MartinP David G. 3 Replies Last reply Reply Quote 0
      • MartinP
        MartinP @paul53 last edited by

        @paul53 Interessant ist auch die Anmerkung in der Doku...

        If the option "Do not subscribe all states on start" is deactivated, you can use simpler call:

        existsObject(id)

        1 Reply Last reply Reply Quote 0
        • David G.
          David G. @paul53 last edited by David G.

          @paul53

          🫣 Augen auf am Steuer. Die Fehlermeldungen sind jetzt weg.

          Frage mich warum in der Funktion die -1 steht.
          So hat er die Variable immer damit beschrieben, wenn es den DP nicht gibt. Ohne klappt es wunderbar. In len anderen Scripten habe ich die drinnen.

          @MartinP
          Danke dur die Hinweise.

          paul53 1 Reply Last reply Reply Quote 0
          • MartinP
            MartinP @paul53 last edited by

            @paul53 said in If State exists:

            Sie liefert den Wert bei Existenz zurück.

            Sie liefert true zurück., wenn der State existiert, und false sonst ...

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @David G. last edited by

              @david-g sagte: warum in der Funktion die -1 steht.

              Das ist der Wert bei Nichtexistenz. Andernfalls würde bei Nichtexistenz undefined zurück geliefert.

              MartinP 1 Reply Last reply Reply Quote 0
              • MartinP
                MartinP @paul53 last edited by

                @paul53 Ist aber etwas, was Programmierer, die von streng typisierten Sprachen kommen irritiert ....

                Im Erfolgsfall true/false zurück, und im Fehlerfall -1 ....

                Die Architektur der Funktion scheint mir da sowieso nicht besonders praktisch zu sein ...

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @MartinP last edited by

                  @martinp sagte: Die Architektur der Funktion scheint mir da sowieso nicht besonders praktisch zu sein ...

                  Das stimmt. Ursprünglich sollten wohl 3 Symbole (wahr / falsch / nicht vorhanden) für die Visualisierung erzeugt werden.

                  David G. 2 Replies Last reply Reply Quote 0
                  • David G.
                    David G. @paul53 last edited by David G.

                    @paul53 sagte in If State exists:

                    Das stimmt. Ursprünglich sollten wohl 3 Symbole (wahr / falsch / nicht vorhanden) für die Visualisierung erzeugt werden.

                    Das stimmt sogar.
                    Hab ich aus meinem Batteriescript kopiert.
                    Für Batterie voll/leer/nicht vorhanden.

                    EDIT
                    Wie müsste es denn besser gemacht werden, wenn ich nur prüfen möchte ob der DP existiert und falls ja, den Wert in die Variable schreiben möchte?

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @David G. last edited by paul53

                      @david-g sagte: nur prüfen möchte ob der DP existiert und falls ja, den Wert in die Variable schreiben möchte?

                      Was soll die Variable enthalten, wenn der DP nicht existiert? Wie wird die Variable ausgewertet?

                      David G. 1 Reply Last reply Reply Quote 0
                      • David G.
                        David G. @paul53 last edited by

                        @paul53

                        Bisher habe ich immer auf Null geprüft.

                        Screenshot_20240304_140400_Chrome.jpg

                        Dann kann man es für alles verwenden.

                        paul53 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @David G. last edited by paul53

                          @david-g sagte: auf Null geprüft.

                          Dann ändere die zweite Zeile in der JS-Funktion in

                          return null;
                          

                          oder lasse sie ganz weg: Im Vergleich liefern null und undefined das gleiche Ergebnis.

                          1 Reply Last reply Reply Quote 0
                          • David G.
                            David G. @paul53 last edited by

                            Okay, dachte da wäre noch mehr unlogisch/nicht gut nach diesem Satz.

                            @paul53 sagte in If State exists:

                            Die Architektur der Funktion scheint mir da sowieso nicht besonders praktisch zu sein ...

                            paul53 1 Reply Last reply Reply Quote 0
                            • paul53
                              paul53 @David G. last edited by

                              @david-g sagte: dachte da wäre noch mehr unlogisch/nicht gut nach diesem Satz.

                              Die Variable enthält bei vorhandenem DP eine Zahl zwischen 0 und 100. Damit wäre die -1 wieder logisch und man müsste auf >= 0 prüfen.

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              917
                              Online

                              32.0k
                              Users

                              80.4k
                              Topics

                              1.3m
                              Posts

                              3
                              15
                              258
                              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