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. Gelöst: ParseInt

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    756

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    6.1k

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

Gelöst: ParseInt

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascript
7 Beiträge 2 Kommentatoren 1.2k Aufrufe 1 Beobachtet
  • Ä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.
  • M Offline
    M Offline
    michihorn
    schrieb am zuletzt editiert von michihorn
    #1

    Hallo
    ich möchte gerne aus einem String "17:02" die Std und die Minuten als Integer in einen Datenpunkt schreiben
    Ich habe das mal so versucht, geht das eleganter:

    var VarDusk=getState("javascript.0.Astro.Zeiten.08 - dusk").val; 
    var R_stunde = parseInt(VarDusk, 10);
    var min = VarDusk.substr(3, 2);
    var R_minute = parseInt(min, 10);
    
    paul53P 1 Antwort Letzte Antwort
    0
    • M michihorn

      Hallo
      ich möchte gerne aus einem String "17:02" die Std und die Minuten als Integer in einen Datenpunkt schreiben
      Ich habe das mal so versucht, geht das eleganter:

      var VarDusk=getState("javascript.0.Astro.Zeiten.08 - dusk").val; 
      var R_stunde = parseInt(VarDusk, 10);
      var min = VarDusk.substr(3, 2);
      var R_minute = parseInt(min, 10);
      
      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      @michihorn sagte in ParseInt:

      "17:02" die Std und die Minuten als Integer

      Da die Stunden evtl. mit oder ohne führende "0" auftreten können, bevorzuge ich die Array-Version.

      var VarDusk = getState("javascript.0.Astro.Zeiten.08 - dusk").val.split(':'); 
      var R_stunde = parseInt(VarDusk[0], 10);
      var R_minute = parseInt(VarDusk[1], 10);
      

      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
      • M Offline
        M Offline
        michihorn
        schrieb am zuletzt editiert von
        #3

        Danke,
        jetzt aktuell ist Dusk bei 17:05. R_minute gibt mir aber eine 7 aus. Warum?
        Anbei das komplette Script, sicher stark optimierungsbedürftig ;-)

        createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Astro_std",{read: true,write: true,desc: "Zeiteingabe Stunden ein,",type: "number",min:'0', max:'24',def:17});
        createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Astro_min",{read: true,write: true,desc: "Zeiteingabe Minute ein,",type: "number",min:'0', max:'24',def:0});
        createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Warte_std",{read: true,write: true,desc: "Zeiteingabe Stunden ein,",type: "number",min:'0', max:'24',def:1});
        createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Warte_min",{read: true,write: true,desc: "Zeiteingabe Minute ein,",type: "number",min:'0', max:'24',def:0});
        createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_std",{read: true,write: true,desc: "Neu Runter Stunden,",type: "number",min:'0', max:'24',def:1});
        createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_min",{read: true,write: true,desc: "Neu Runter Minuten,",type: "number",min:'0', max:'24',def:0});
        createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Verzögerung");
        
        
        schedule("* * * * *", function () {
        var VarDusk=getState("javascript.0.Astro.Zeiten.08 - dusk").val; 
        var R_stunde = parseInt(VarDusk[0], 10);
        //var min = VarDusk.substr(3, 2);
        var R_minute = parseInt(VarDusk[1], 10);
        log(R_minute);
        var Warte_std =getState('javascript.0.Rolladen.Zeitsteuerung.ASTRO.Warte_std').val
        var Warte_min =getState('javascript.0.Rolladen.Zeitsteuerung.ASTRO.Warte_min').val
        
        var add_std = Math.floor(R_stunde + Warte_std);
        var add_min = Math.floor(R_minute + Warte_min);
        
        var msec=60000 * ((60*Warte_std) + Warte_min);
        setState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Verzögerung", msec);
        
        setState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_std", add_std);
        setState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_min", add_min);
        var neue_std =getState('javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_std').val
        var neue_min =getState('javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_min').val
        
        var R_time = 60 * neue_std + neue_min;
            let now = new Date();
            now = 60 * now.getHours() + now.getMinutes();
            let diff = (R_time - now);
            if(diff < 0) diff = 0;
            let h = Math.floor(diff / 60);
            let m = diff - h * 60;
            let restzeit = (h + " Stunden, " + m + " Minuten");
            log("Restzeit: " +restzeit);
            setState("javascript.0.Rolladen.Zeitsteuerung.VIER.Ganzzu", restzeit, true);
        });
        
        paul53P 1 Antwort Letzte Antwort
        0
        • M michihorn

          Danke,
          jetzt aktuell ist Dusk bei 17:05. R_minute gibt mir aber eine 7 aus. Warum?
          Anbei das komplette Script, sicher stark optimierungsbedürftig ;-)

          createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Astro_std",{read: true,write: true,desc: "Zeiteingabe Stunden ein,",type: "number",min:'0', max:'24',def:17});
          createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Astro_min",{read: true,write: true,desc: "Zeiteingabe Minute ein,",type: "number",min:'0', max:'24',def:0});
          createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Warte_std",{read: true,write: true,desc: "Zeiteingabe Stunden ein,",type: "number",min:'0', max:'24',def:1});
          createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Warte_min",{read: true,write: true,desc: "Zeiteingabe Minute ein,",type: "number",min:'0', max:'24',def:0});
          createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_std",{read: true,write: true,desc: "Neu Runter Stunden,",type: "number",min:'0', max:'24',def:1});
          createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_min",{read: true,write: true,desc: "Neu Runter Minuten,",type: "number",min:'0', max:'24',def:0});
          createState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Verzögerung");
          
          
          schedule("* * * * *", function () {
          var VarDusk=getState("javascript.0.Astro.Zeiten.08 - dusk").val; 
          var R_stunde = parseInt(VarDusk[0], 10);
          //var min = VarDusk.substr(3, 2);
          var R_minute = parseInt(VarDusk[1], 10);
          log(R_minute);
          var Warte_std =getState('javascript.0.Rolladen.Zeitsteuerung.ASTRO.Warte_std').val
          var Warte_min =getState('javascript.0.Rolladen.Zeitsteuerung.ASTRO.Warte_min').val
          
          var add_std = Math.floor(R_stunde + Warte_std);
          var add_min = Math.floor(R_minute + Warte_min);
          
          var msec=60000 * ((60*Warte_std) + Warte_min);
          setState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Verzögerung", msec);
          
          setState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_std", add_std);
          setState("javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_min", add_min);
          var neue_std =getState('javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_std').val
          var neue_min =getState('javascript.0.Rolladen.Zeitsteuerung.ASTRO.Neu_min').val
          
          var R_time = 60 * neue_std + neue_min;
              let now = new Date();
              now = 60 * now.getHours() + now.getMinutes();
              let diff = (R_time - now);
              if(diff < 0) diff = 0;
              let h = Math.floor(diff / 60);
              let m = diff - h * 60;
              let restzeit = (h + " Stunden, " + m + " Minuten");
              log("Restzeit: " +restzeit);
              setState("javascript.0.Rolladen.Zeitsteuerung.VIER.Ganzzu", restzeit, true);
          });
          
          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #4

          @michihorn
          In Zeile 11 fehlt .split(':') am Ende.

          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
          • M Offline
            M Offline
            michihorn
            schrieb am zuletzt editiert von
            #5

            sorry, wie genau muss das Ausehen?

            paul53P 1 Antwort Letzte Antwort
            0
            • M michihorn

              sorry, wie genau muss das Ausehen?

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

              @michihorn sagte in ParseInt:

              wie genau muss das Ausehen?

              So wie hier.

              var VarDusk = getState("javascript.0.Astro.Zeiten.08 - dusk").val.split(':'); 
              

              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
              • M Offline
                M Offline
                michihorn
                schrieb am zuletzt editiert von
                #7

                @paul53 sagte in ParseInt:

                var VarDusk = getState("javascript.0.Astro.Zeiten.08 - dusk").val.split(':');

                oh supi, danke

                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

                587

                Online

                32.8k

                Benutzer

                82.7k

                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