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. Datenpunkt kürzen - einzeilige Lösung gesucht

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    492

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.6k

Datenpunkt kürzen - einzeilige Lösung gesucht

Geplant Angeheftet Gesperrt Verschoben JavaScript
5 Beiträge 3 Kommentatoren 369 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.
  • W Offline
    W Offline
    WolfgangFB
    schrieb am zuletzt editiert von
    #1

    Um von einem Datenpunkt wie z.B. esphome.0.083AF28E23F0.Sensor.1024935111.state den Teil ohne ".state" zu erhalten habe ich momentan folgende Funktion:

    function RemoveLast(InStr){
        // RemoveLast("alias.0.Raum.Arbeit.Licht.0.state") ergibt "alias.0.Raum.arbeit.Licht.0"
        var InStrSplit = InStr.split("."); 
        InStrSplit.pop(); // letzes Element weg
        return(InStrSplit.join("."))
        }
    

    Bekommt man das als Einzeiler hin?

    paul53P 1 Antwort Letzte Antwort
    0
    • W WolfgangFB

      Um von einem Datenpunkt wie z.B. esphome.0.083AF28E23F0.Sensor.1024935111.state den Teil ohne ".state" zu erhalten habe ich momentan folgende Funktion:

      function RemoveLast(InStr){
          // RemoveLast("alias.0.Raum.Arbeit.Licht.0.state") ergibt "alias.0.Raum.arbeit.Licht.0"
          var InStrSplit = InStr.split("."); 
          InStrSplit.pop(); // letzes Element weg
          return(InStrSplit.join("."))
          }
      

      Bekommt man das als Einzeiler hin?

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #2

      @wolfgangfb sagte: Bekommt man das als Einzeiler hin?

      return id.substring(0, id.lastIndexOf('.'));
      

      id = InStr

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      W 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @wolfgangfb sagte: Bekommt man das als Einzeiler hin?

        return id.substring(0, id.lastIndexOf('.'));
        

        id = InStr

        W Offline
        W Offline
        WolfgangFB
        schrieb am zuletzt editiert von
        #3

        @paul53
        Super, danke, LastIndexOf kannte ich noch nicht.

        Hast Du vielleicht auch für diese Funktion einen Einzeiler für mich? (In einer Zahl an der Stelle "Stelle" ein Bit setzen oder löschen)

        function SetBit(Zahl, Stelle, Wert){
            var Maske = 1 << (Stelle);
            Zahl = (Wert == 1) ? Zahl |= Maske: Zahl &= ~Maske;
            return(Zahl); 
            }
        
        
        paul53P haus-automatisierungH 2 Antworten Letzte Antwort
        0
        • W WolfgangFB

          @paul53
          Super, danke, LastIndexOf kannte ich noch nicht.

          Hast Du vielleicht auch für diese Funktion einen Einzeiler für mich? (In einer Zahl an der Stelle "Stelle" ein Bit setzen oder löschen)

          function SetBit(Zahl, Stelle, Wert){
              var Maske = 1 << (Stelle);
              Zahl = (Wert == 1) ? Zahl |= Maske: Zahl &= ~Maske;
              return(Zahl); 
              }
          
          
          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #4

          @wolfgangfb sagte: für diese Funktion einen Einzeiler für mich?

          function SetBit(Zahl, Stelle, Wert){
              return Wert ? Zahl | 1 << Stelle : Zahl & ~(1 << Stelle);
          }
          

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Antwort Letzte Antwort
          0
          • W WolfgangFB

            @paul53
            Super, danke, LastIndexOf kannte ich noch nicht.

            Hast Du vielleicht auch für diese Funktion einen Einzeiler für mich? (In einer Zahl an der Stelle "Stelle" ein Bit setzen oder löschen)

            function SetBit(Zahl, Stelle, Wert){
                var Maske = 1 << (Stelle);
                Zahl = (Wert == 1) ? Zahl |= Maske: Zahl &= ~Maske;
                return(Zahl); 
                }
            
            
            haus-automatisierungH Offline
            haus-automatisierungH Offline
            haus-automatisierung
            Developer Most Active
            schrieb am zuletzt editiert von
            #5

            @wolfgangfb sagte in Datenpunkt kürzen - einzeilige Lösung gesucht:

            Hast Du vielleicht auch für diese Funktion einen Einzeiler für mich?

            Wenn Du selbst besser werden möchtest, schau Dir mal https://www.codewars.com/ an. Finde ich ein ziemlich cooles Projekt um etwas dazu zu lernen.

            🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
            🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
            📚 Meine inoffizielle ioBroker Dokumentation

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


            Support us

            ioBroker
            Community Adapters
            Donate

            336

            Online

            32.5k

            Benutzer

            81.8k

            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