Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Und Oder Verknüpfung

NEWS

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    8
    1
    502

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    15
    1
    2.7k

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    2.9k

Und Oder Verknüpfung

Geplant Angeheftet Gesperrt Verschoben JavaScript
3 Beiträge 3 Kommentatoren 848 Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • H Offline
    H Offline
    HKF8770
    schrieb am zuletzt editiert von
    #1

    Hallo Ih,

    leider eine Anfängerfrage aber ich komm nicht drauf.

    Wie mach erweitere ich unteres Skript durch eine "and" oder "or" Verknüpfung?

    Vor allem die "and" ist mir wichtig, sprich wenn 2 Abfragen wahr sind dann geschieht erst was.

    Danke für eure Hilfe

     if (Motion_Bad === true) {
    
          setState('hm-rpc.0.JRT0002008.1.ON_TIME', 600 );                          // Setze Timer in sekunden => 30x60=1800
          setState('hm-rpc.0.JRT0002008.1.STATE', 'true');                              // Licht Aussenbeleuchtung einschalten
          log("---> LED Bad eingeschaltet","info");
          setState('hm-rpc.0.KEQ0964544.1.ON_TIME', 600 );                          // Setze Timer in sekunden => 30x60=1800
          setState('hm-rpc.0.KEQ0964544.1.STATE', 'true');                              // Licht Aussenbeleuchtung einschalten
          } 
    

    Freddy

    1 Antwort Letzte Antwort
    0
    • B Offline
      B Offline
      Beatz
      schrieb am zuletzt editiert von
      #2

      Hallo,

      eine UND-Verknüpfung kannst Du mit && realisieren, eine ODER-Verknüpfung mit || (Pipe = Alt Gr + <).

      Beispiel (UND):

      if (Motion_Bad === true && Licht_Bad === false) {
          setState('hm-rpc.0.JRT0002008.1.STATE', 'true');
      }
      

      Beispiel (ODER):

      if (Motion_Bad === true || Motion_Schlafen === true) {
          Alarm;
      }
      

      Du kannst diese Bedingungen auch mithilfe von Klammern beliebig verschachteln.

      Beispiel (ODER):

      if ((Motion_Bad === true || Motion_Schlafen === true) && Alarmanlage_scharf === true) {
          Alarm;
      }
      

      Eine UND-Verknüfung kannst Du grundsätzlich auch mit verschachtelten if-Bedingungen erstellen. Das macht insbesondere komplexe Zusammenhänge übersichtlicher und Du kannst einzelne else-Zweige einbauen:

      if (Motion_Bad === true || Motion_Schlafen === true) {
          if (Alarmanlage_scharf === true) {
              Alarm;
          }
      }
      
      1 Antwort Letzte Antwort
      0
      • BluefoxB Offline
        BluefoxB Offline
        Bluefox
        schrieb am zuletzt editiert von
        #3

        Falls du auf zwei Inputs (sensoren) reagieren musst, dann ist das ein bisschen komplizierter:

        var idSensor1 = "hm-rpc.0.BLA1.1.STATE";
        var idSensor2 = "hm-rpc.0.BLA2.1.STATE";
        
        function checkStates() {
           // UND Verknüpfung 
           if (getState(idSensor1).val && getState(idSensor2).val) {
                // Irgendwas ausführen
           }
        }
        on(idSensor1, checkStates);
        on(idSensor2, checkStates);
        
        
        1 Antwort Letzte Antwort
        0

        Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

        Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

        Mit deinem Input könnte dieser Beitrag noch besser werden 💗

        Registrieren Anmelden
        Antworten
        • In einem neuen Thema antworten
        Anmelden zum Antworten
        • Älteste zuerst
        • Neuste zuerst
        • Meiste Stimmen


        Support us

        ioBroker
        Community Adapters
        Donate

        616

        Online

        33.0k

        Benutzer

        83.3k

        Themen

        1.3m

        Beiträge
        Community
        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
        ioBroker Community 2014-2026
        logo
        • Anmelden

        • Du hast noch kein Konto? Registrieren

        • Anmelden oder registrieren, um zu suchen
        • Erster Beitrag
          Letzter Beitrag
        0
        • Home
        • Aktuell
        • Tags
        • Ungelesen 0
        • Kategorien
        • Unreplied
        • Beliebt
        • GitHub
        • Docu
        • Hilfe