Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Count Up Script Ausgabe in Tagen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Count Up Script Ausgabe in Tagen

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      Big Fish last edited by

      Hallo Zusammen,

      ich bin schon eine ganze weile am basteln mit IoBroker, seit ich von DashUI umgestiegen bin. Soweit klappt auch alles was ich mir vorgestellt habe. Bis auf zwei Dinge bei denen ich nicht weiter komme.

      Ziel ist die Ausgabe der Anzahl der Tage seit einem bestimmten Ereigniss in der Vergangenheit. Nachdem ich mich mit JS nicht wirklich auskenne, habe ich mich durch das Netz gewühlt und sogar etwas gefunden und ein bisschen angepasst. Nur leider habe ich keine Ahnung wie ich das Skript jetzt dazu bekomme die Anzahl der Tage in eine variable zu schreiben. Ganz zu schweigen davon, dass ganze nur in Tage ausgeben zu lassen und nicht in Jahre, Monate, Tage. Kann mir von euch jemand helfen?

            var jahr=2015, monat=12, tag=9; // Start-Datum in MEZ
      
            function countup() {
              var startDatum=new Date(jahr,monat-1,tag);
              zielDatum=new Date(); // Aktuelles Datum
      
              // Countup erst berechnen und anzeigen, wenn Start-Datum überschritten wird
              if(startDatum<zieldatum) {/var/jahre="0," monate="0," tage="0," while(startdatum<zieldatum)/jahre++;/startdatum.setfullyear(startdatum.getfullyear()+1);/}/startdatum.setfullyear(startdatum.getfullyear()-1);/jahre--;/monate++;/startdatum.setmonth(startdatum.getmonth()+1);/startdatum.setmonth(startdatum.getmonth()-1);/monate--;/while(startdatum.gettime()+(24*60*60*1000)<zieldatum)/tage++;/startdatum.settime(startdatum.gettime()+(24*60*60*1000));/anzeige/formatieren/(jahre!="1)?jahre=jahre+&quot;" jahre,/":jahre="jahre+&quot;" jahr,/";/(monate!="1)?monate=monate+&quot;" monate,/":monate="monate+&quot;" monat,/(tage!="1)?tage=tage+&quot;" tage,/":tage="tage+&quot;" tag,/document.countupform.countupinput.value="jahre+monate+tage;" anderenfalls/alles/auf/null/setzen/else/;/settimeout('countup()',200);/}<e=""></zieldatum)>
      
      1 Reply Last reply Reply Quote 0
      • B
        Big Fish last edited by

        Die Lösung war doch viel einfacher als gedacht…..

        var 	then = new Date(2015, 11, 10, 00, 00, 00), // month is zero based
        
        	now  = new Date; // no arguments -> current date
        	days = "daysincebirth"
        
        // 24 hours, 60 minutes, 60 seconds,1000 milliseconds 
        setState (days, Math.round((now - then) / (1000 * 60 * 60 * 24)))
        
        

        und es funktioniert….

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

        Support us

        ioBroker
        Community Adapters
        Donate

        850
        Online

        31.7k
        Users

        79.7k
        Topics

        1.3m
        Posts

        1
        2
        918
        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