Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] Bug in Javascript?

    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

    [gelöst] Bug in Javascript?

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      ticaki Developer last edited by ticaki

      @iob69

      Hehe das ist ein String den getState dir da liefert.

      Edit: wobei ich jetzt angenommen hätte das bei einem == Vergleich gleich True ist

      I haus-automatisierung 2 Replies Last reply Reply Quote 0
      • I
        iob69 @ticaki last edited by

        @ticaki sagte in Bug in Javascript?:

        das ist ein String den getState dir da liefert

        Wie bitte?

        T 1 Reply Last reply Reply Quote 0
        • haus-automatisierung
          haus-automatisierung Developer Most Active @ticaki last edited by

          @ticaki sagte in Bug in Javascript?:

          Hehe das ist ein String den getState dir da liefert.
          Edit: wobei ich jetzt angenommen hätte das bei einem == Vergleich gleich True ist

          Nein. true == 'true' ist nie wahr. Das wär ja übel 🙂

          I 1 Reply Last reply Reply Quote 0
          • I
            iob69 @haus-automatisierung last edited by iob69

            @ticaki
            Das kann nicht sein. Ich hab ja
            let state: boolean = getstate(...
            Das ist typescript. Da könnte nie ein string zugeordnet werden.

            T haus-automatisierung 2 Replies Last reply Reply Quote 0
            • T
              ticaki Developer @iob69 last edited by

              @iob69

              Ich hab das Zeichen nicht aufm Handy. Da sind Gänsefüßchen um das true um debugfenster das bedeutet üblicherweise das es ein String ist

              1 Reply Last reply Reply Quote 0
              • OliverIO
                OliverIO @iob69 last edited by

                @iob69

                ja string und du bist in die
                truthy / falsy falle getappt

                https://developer.mozilla.org/en-US/docs/Glossary/Truthy
                https://developer.mozilla.org/en-US/docs/Glossary/Falsy

                I 1 Reply Last reply Reply Quote 0
                • I
                  iob69 @OliverIO last edited by

                  @oliverio
                  Nein, state kann kein String sein, er wird ja als boolean deklariert

                  1 Reply Last reply Reply Quote 0
                  • T
                    ticaki Developer @iob69 last edited by

                    @iob69

                    Typescript prüft keine Werte zur Laufzeit

                    I 1 Reply Last reply Reply Quote 0
                    • I
                      iob69 @ticaki last edited by

                      @ticaki
                      Aber der Datentyp des Datenpunktes ist auch Boolean!

                      T 1 Reply Last reply Reply Quote 0
                      • haus-automatisierung
                        haus-automatisierung Developer Most Active @iob69 last edited by

                        @iob69 sagte in Bug in Javascript?:

                        Das ist typescript. Da könnte nie ein string zugeordnet werden.

                        Das ist nicht so ganz richtig, .val kann alles mögliche auf einem State sein. Der Typ ist als any definiert.

                        Screenshot 2025-02-11 at 15.21.27.png

                        @iob69 sagte in Bug in Javascript?:

                        Aber der Datentyp des Datenpunktes ist auch Boolean!

                        Und der aktuelle Wert in dem Datenpunkt auch? Weil man aktuell noch andere Datentypen schreiben kann, als der State vorgibt. Das erzeugt nur eine Warnung im Log.

                        1 Reply Last reply Reply Quote 1
                        • T
                          ticaki Developer @iob69 last edited by

                          @iob69

                          Teste es doch mit einem typeof Ich kann nur sagen was ich sehe

                          I 1 Reply Last reply Reply Quote 1
                          • I
                            iob69 @ticaki last edited by

                            @ticaki
                            Ok, stimmt, typeof liefert string!???
                            Wieso liefert mir val einen String wenn der Datenpunkt vom typ boolean ist? wozu gibt man denn den typen in einem Datentyp überhaupt an???

                            haus-automatisierung 1 Reply Last reply Reply Quote 0
                            • haus-automatisierung
                              haus-automatisierung Developer Most Active @iob69 last edited by

                              @iob69 sagte in Bug in Javascript?:

                              wozu gibt man denn den typen in einem Datentyp überhaupt an???

                              Wie gesagt, man bekommt eine Warnung wenn man einen anderen Datentyp schreibt als angegeben. Wie genau hast den Datenpunkt denn geschrieben?

                              I 1 Reply Last reply Reply Quote 2
                              • I
                                iob69 @haus-automatisierung last edited by

                                @haus-automatisierung
                                Der wird von einem Sensor geliefert:

                                2b0b9d54-9914-4d15-b63b-511c919ba496-grafik.png

                                Dann ist der wohl ein string, so n sch...
                                Und den mappe ich dann auf einen boolean. Ok, danke ich weiss jetzt etwa wo ich suchen muss, danke an alle!

                                haus-automatisierung 1 Reply Last reply Reply Quote 0
                                • haus-automatisierung
                                  haus-automatisierung Developer Most Active @iob69 last edited by

                                  @iob69 sagte in Bug in Javascript?:

                                  Der wird von einem Sensor geliefert:

                                  Dann bitte einen Issue im Adapter öffnen, welcher den State falsch setzt. Falls Du eh mit einem Alias arbeitest, dann kannst ja einfach die Lesefunktion nutzen, um daraus ein Boolean zu machen:

                                  val === 'true'

                                  I 1 Reply Last reply Reply Quote 0
                                  • I
                                    iob69 @haus-automatisierung last edited by

                                    @haus-automatisierung
                                    Nein, der Adapter kann nichts dafür, der DP ist string. Ich hab den mal gelöscht und beim wiedererstellen hab ich das offenbar nicht wieder auf bool geändert.

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    770
                                    Online

                                    31.8k
                                    Users

                                    80.0k
                                    Topics

                                    1.3m
                                    Posts

                                    4
                                    17
                                    458
                                    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