Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Fenster Zählen Script Erweiterung

    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

    Fenster Zählen Script Erweiterung

    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      f0rd42 last edited by

      Hallo

      ich bin gerade dbaei, das allgemein bekannte Fenster Zählen Script für mich passend zu machen, d.h.:

      • Funktioniert mit den neuen SRH (HmIP)

      • Zählt auch die Anzahl der gekippten Fenster.

      Dabei habe ich einige Erweiterungen vorgenommen und stehe nun vor einem Problem, dass ich nicht verstehe (JS Anfänger)

      In folgendem Codeblock meckert er beim Kompilieren:

      cacheSelectorState.each(function (id, i) {                                  // Schleife für jedes gefundenen Element *.STATE im Gewerk Fenster
              var status = getState(id).val;                                          // Zustand *.STATE abfragen (jedes Element)
              var obj    = getObject(id);
              var name = getObject(id).common.name;
              var devicename = name.substring(0, name.indexOf(".STATE"));             //.state aus Text entfernen
              if (status == '2' /*SRH*/) {  // wenn Zustand offen, dann wird die Anzahl der Fenster hochgezählt
                   ++anzahlFensterauf;
                   textFensterauf.push(devicename + ' (' + fensterstatus(status) + ')');  // Name und Zustand zum Array hinzufügen
              }  
              else (status == '1' /*SRH*/) {  // wenn Zustand gekippt, dann wird die Anzahl der Fenster hochgezählt
                   ++anzahlFenstergekippt;
                   textFenstergekippt.push(devicename + ' (' + fensterstatus(status) + ')');  // Name und Zustand zum Array hinzufügen
              }                 
              log('Fenster #' + (i+1) + ': ' + devicename + ' ' + fensterstatus(status)/* + ' (' + status + ' / ' + typeof status + ')'*/);
              ++anzahlFenster;                                                        // Zählt die Anzahl der vorhandenen Fenster unabhängig vom Status
          }); 
      

      Und zwar behauptet er, dass hinter "else (status == '1' /SRH/)" ein Semikolon erwartet wird und keine geschweifte Klammer auf ......

      Kann mir das jemand erklären oder mir bei der Lösung behilflich sein?

      Danke

      OstfrieseUnterwegs 1 Reply Last reply Reply Quote 0
      • OstfrieseUnterwegs
        OstfrieseUnterwegs @f0rd42 last edited by

        @f0rd42
        Da hat er Recht.

        if (condition1) {
          //  block of code to be executed if condition1 is true
        } else if (condition2) {
          //  block of code to be executed if the condition1 is false and condition2 is true
        } else {
          //  block of code to be executed if the condition1 is false and condition2 is false
        }
        
        1 Reply Last reply Reply Quote 0
        • F
          f0rd42 last edited by

          Niemand von den Profis eine Idee?
          JS Adapter ist derzeit 4.1.10, aber immer noch das Gleiche Problem.

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

            @f0rd42 sagte:

                else (status == '1' /*SRH*/) {  // wenn Zustand gekippt, dann wird die Anzahl der Fenster hochgezählt  
            
                    else if(status == '1' /*SRH*/) {  // wenn Zustand gekippt, dann wird die Anzahl der Fenster hochgezählt
            

            @OstfrieseUnterwegs hat es doch allgemein erklärt !

            1 Reply Last reply Reply Quote 0
            • OstfrieseUnterwegs
              OstfrieseUnterwegs last edited by

              else (bedingung) {...}; gibt es nicht.
              Entweder else if (bedingung) {...}; oder _else {...};

              1 Reply Last reply Reply Quote 0
              • F
                f0rd42 last edited by

                Da haben sich die Antworten überschnitten.
                Mann, dass mir das nicht selbst aufgefallen ist.

                Ich werde es mal weiter umsetzen und Reporten.

                Danke

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

                Support us

                ioBroker
                Community Adapters
                Donate

                815
                Online

                31.8k
                Users

                80.0k
                Topics

                1.3m
                Posts

                3
                6
                461
                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