Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Set state to null?

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    15
    1
    809

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    680

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

Set state to null?

Geplant Angeheftet Gesperrt Verschoben JavaScript
6 Beiträge 3 Kommentatoren 682 Aufrufe 3 Watching
  • Ä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.
  • I Offline
    I Offline
    ichderarnd
    schrieb am zuletzt editiert von ichderarnd
    #1

    Mir gelingt es nicht, einen State mit setState() im Javascript auf null zu setzen.
    Bzw. finde ich bisher nicht, wie es geht.

    Hintergrund: Ich möchte nicht "expire" nutzen sondern im Script entscheiden, wann ich keinen Zustand mehr habe und diesen auf null setzen damit über den History-Adapter / Grafana auch tatsächlich dokumentiert ist, dass es zu diesem Zeitpunkt keinen Wert gab.

    Sollte es gar nicht gehen, muss ich wohl Werte weit außerhalb des Wertebereichs nehmen und per SQL dann als null an Grafana liefern...

    (Edit: Argh, bin versehentlich im ioBroker Allgemein gelandet. Verschieben kann ich selbst wohl nicht?
    Edit2: Danke für‘s Verschieben :))

    arteckA OliverIOO 2 Antworten Letzte Antwort
    0
    • I ichderarnd

      Mir gelingt es nicht, einen State mit setState() im Javascript auf null zu setzen.
      Bzw. finde ich bisher nicht, wie es geht.

      Hintergrund: Ich möchte nicht "expire" nutzen sondern im Script entscheiden, wann ich keinen Zustand mehr habe und diesen auf null setzen damit über den History-Adapter / Grafana auch tatsächlich dokumentiert ist, dass es zu diesem Zeitpunkt keinen Wert gab.

      Sollte es gar nicht gehen, muss ich wohl Werte weit außerhalb des Wertebereichs nehmen und per SQL dann als null an Grafana liefern...

      (Edit: Argh, bin versehentlich im ioBroker Allgemein gelandet. Verschieben kann ich selbst wohl nicht?
      Edit2: Danke für‘s Verschieben :))

      arteckA Offline
      arteckA Offline
      arteck
      Developer Most Active
      schrieb am zuletzt editiert von arteck
      #2

      @arndl nimm liber ein wertebereich z:b: 99 den du selber setzten kannst..

      eine null ist ein nicht definierter Wert und das ist nur dan nwenn das Object nicht initialisiiert wurde... solle eigentlich NIE passieren.
      mann sollte die Variablen immer ninitialisieren (ok ausser in ABAP da ist initial auch space :-) )

      zigbee hab ich, zwave auch, nuc's genauso und HA auch

      I 1 Antwort Letzte Antwort
      0
      • arteckA arteck

        @arndl nimm liber ein wertebereich z:b: 99 den du selber setzten kannst..

        eine null ist ein nicht definierter Wert und das ist nur dan nwenn das Object nicht initialisiiert wurde... solle eigentlich NIE passieren.
        mann sollte die Variablen immer ninitialisieren (ok ausser in ABAP da ist initial auch space :-) )

        I Offline
        I Offline
        ichderarnd
        schrieb am zuletzt editiert von
        #3

        @arteck
        Genau das möchte ich ja erreichen: einen undefinierten Wert.
        Lege ich einen State neu an, ist der Wert zunächst undefiniert. Ich kann dann einen Wert setzen, komme aber nicht wieder in diesen Zustand zurück wenn es keinen gültigen Wert mehr gibt.

        Beispiel: Ein Ping auf eine IP Adresse. Ein Timeout kann nur sinnvoll als null abgebildet werden. 5000 ms wäre ebenso falsch wie 0 ms.

        F0DBD539-40B5-4360-A8E8-45EA7D18D268.jpeg

        Im Screenshot ist zu sehen, dass ab 11 Uhr das Internet ausgefallen ist. Es wird der letzte Ping Wert angezeigt, was jedoch nicht korrekt ist. Könnte ich den Wert auf null setzen, wäre der Graf dort unterbrochen.

        1 Antwort Letzte Antwort
        0
        • I ichderarnd

          Mir gelingt es nicht, einen State mit setState() im Javascript auf null zu setzen.
          Bzw. finde ich bisher nicht, wie es geht.

          Hintergrund: Ich möchte nicht "expire" nutzen sondern im Script entscheiden, wann ich keinen Zustand mehr habe und diesen auf null setzen damit über den History-Adapter / Grafana auch tatsächlich dokumentiert ist, dass es zu diesem Zeitpunkt keinen Wert gab.

          Sollte es gar nicht gehen, muss ich wohl Werte weit außerhalb des Wertebereichs nehmen und per SQL dann als null an Grafana liefern...

          (Edit: Argh, bin versehentlich im ioBroker Allgemein gelandet. Verschieben kann ich selbst wohl nicht?
          Edit2: Danke für‘s Verschieben :))

          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          schrieb am zuletzt editiert von
          #4

          @arndl sagte in Set state to null?:

          Mir gelingt es nicht, einen State mit setState() im Javascript auf null zu setzen.
          Bzw. finde ich bisher nicht, wie es geht.

          Hintergrund: Ich möchte nicht "expire" nutzen sondern im Script entscheiden, wann ich keinen Zustand mehr habe und diesen auf null setzen damit über den History-Adapter / Grafana auch tatsächlich dokumentiert ist, dass es zu diesem Zeitpunkt keinen Wert gab.

          Sollte es gar nicht gehen, muss ich wohl Werte weit außerhalb des Wertebereichs nehmen und per SQL dann als null an Grafana liefern...

          (Edit: Argh, bin versehentlich im ioBroker Allgemein gelandet. Verschieben kann ich selbst wohl nicht?)

          dann musst du den datentyp des datenpunkts auf object setzen.
          wahrscheinlich ist der bei dir nummer.
          null ist für nummer kein gültiger wert.
          optional kannst du dann in dein skript eine eigene formatprüfung einbauen.

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          I 1 Antwort Letzte Antwort
          0
          • OliverIOO OliverIO

            @arndl sagte in Set state to null?:

            Mir gelingt es nicht, einen State mit setState() im Javascript auf null zu setzen.
            Bzw. finde ich bisher nicht, wie es geht.

            Hintergrund: Ich möchte nicht "expire" nutzen sondern im Script entscheiden, wann ich keinen Zustand mehr habe und diesen auf null setzen damit über den History-Adapter / Grafana auch tatsächlich dokumentiert ist, dass es zu diesem Zeitpunkt keinen Wert gab.

            Sollte es gar nicht gehen, muss ich wohl Werte weit außerhalb des Wertebereichs nehmen und per SQL dann als null an Grafana liefern...

            (Edit: Argh, bin versehentlich im ioBroker Allgemein gelandet. Verschieben kann ich selbst wohl nicht?)

            dann musst du den datentyp des datenpunkts auf object setzen.
            wahrscheinlich ist der bei dir nummer.
            null ist für nummer kein gültiger wert.
            optional kannst du dann in dein skript eine eigene formatprüfung einbauen.

            I Offline
            I Offline
            ichderarnd
            schrieb am zuletzt editiert von
            #5

            @oliverio
            Danke für den Hinweis! Das probiere ich heute Abend aus.
            Ja, der Typ ist number.

            I 1 Antwort Letzte Antwort
            0
            • I ichderarnd

              @oliverio
              Danke für den Hinweis! Das probiere ich heute Abend aus.
              Ja, der Typ ist number.

              I Offline
              I Offline
              ichderarnd
              schrieb am zuletzt editiert von
              #6

              Mit object funktioniert es nicht aber mit dem Typ „mixed“.

              1 Antwort Letzte Antwort
              0
              Antworten
              • In einem neuen Thema antworten
              Anmelden zum Antworten
              • Älteste zuerst
              • Neuste zuerst
              • Meiste Stimmen


              Support us

              ioBroker
              Community Adapters
              Donate

              578

              Online

              32.6k

              Benutzer

              81.9k

              Themen

              1.3m

              Beiträge
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
              ioBroker Community 2014-2025
              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