Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. "Heute 0:00 Uhr" eleganter berechen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    "Heute 0:00 Uhr" eleganter berechen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Codierknecht
      Codierknecht Developer Most Active @WolfgangFB last edited by

      @wolfgangfb sagte in "Heute 0:00 Uhr" eleganter berechen:

      Date.getDate liefert 1-31, Date.getMonth daegen 0-11, der Monat ist "0-indexed"

      Wer macht denn so einen Quatsch?
      Ich glaube das "ich lerne JS" lege ich gleich wieder zu den Akten 😡

      Nichtsdestotrotz liefert

      return new Date(new Date().toDateString()); 
      

      das von Dir gewünschte Ergebnis.

      1 Reply Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @fastfoot last edited by

        @fastfoot sagte in "Heute 0:00 Uhr" eleganter berechen:

        ein simpler Test könnte dich vom Gegenteil überzeugen...

        Auf eine dermaßen abstruse Idee bin ich gar nicht erst gekommen 😉

        F paul53 2 Replies Last reply Reply Quote 0
        • F
          fastfoot @Codierknecht last edited by

          @codierknecht sagte in "Heute 0:00 Uhr" eleganter berechen:

          Auf eine dermaßen abstruse Idee bin ich gar nicht erst gekommen

          lohnt aber, gerade als blutiger Anfänger 😀

          Codierknecht 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @Codierknecht last edited by

            @codierknecht sagte: dermaßen abstruse Idee

            So abstrus ist es nicht: Man kann so den Monat direkt als Index auf ein Array mit z.B. deutschen Monatsnamen verwenden.

            Codierknecht 1 Reply Last reply Reply Quote 0
            • SKB
              SKB Developer Most Active last edited by

              Genau wie:

              The getDay() method returns the day of the week (0 to 6) of a date.
              
              Sunday = 0, Monday = 1, ...
              

              Hier greift dann auch das Array, was @paul53 angeschnitten hat, da man einfach mit:

              const weekday = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
              
              const d = new Date();
              let day = weekday[d.getDay()];
              console.log(day);
              

              Den passenden Namen zu dem Wochentag anzeigen lassen kann 😉

              Zero-based index it's called 🙂

              1 Reply Last reply Reply Quote 0
              • Codierknecht
                Codierknecht Developer Most Active @paul53 last edited by

                @paul53 sagte in "Heute 0:00 Uhr" eleganter berechen:

                Man kann so den Monat direkt als Index auf ein Array mit z.B. deutschen Monatsnamen verwenden.

                @skb sagte in "Heute 0:00 Uhr" eleganter berechen:

                Den passenden Namen zu dem Wochentag anzeigen lassen kann

                Wozu man das dann verwenden kann, ist mir durchaus klar.
                Aber das so in formatDate() usw. zu verwenden finde ich persönlich schon reichlich schräg und kenne ich aus anderen Sprachen auch nicht in der Art.
                Ich persönlich finde das in höchstem Maße Un-Intuitiv!

                Beim Wochentag ist das durchaus gebräuchlich ... aber doch nicht beim Monat.
                Dann hätte man auch gleich den Tag des Monats 0-basiert machen können, um zumindest konsistent zu bleiben. Aber dann könnte man doch auch beim Jahr .... ach, lassen wir das - hier wird's dann etwas zu sehr OT.

                SKB paul53 2 Replies Last reply Reply Quote 0
                • Codierknecht
                  Codierknecht Developer Most Active @fastfoot last edited by

                  @fastfoot sagte in "Heute 0:00 Uhr" eleganter berechen:

                  gerade als blutiger Anfänger

                  Ich drücke es mal so aus: Ich verdiene mit Softwareentwicklung seit mehr als 20 Jahren meinen Lebensunterhalt ... allerdings nicht mit JS 😉

                  F 1 Reply Last reply Reply Quote 0
                  • SKB
                    SKB Developer Most Active @Codierknecht last edited by

                    @codierknecht Ist in allen Sprachen Null-Indexiert.

                    PHP, Java, Javascript, C#, C++ usw 🙂

                    Codierknecht 1 Reply Last reply Reply Quote 0
                    • Codierknecht
                      Codierknecht Developer Most Active @SKB last edited by

                      @skb sagte in "Heute 0:00 Uhr" eleganter berechen:

                      Ist in allen Sprachen Null-Indexiert.

                      Das sehe ich anders ... nur mal einige Beispiele:
                      https://www.php.net/manual/de/datetime.format.php
                      https://learn.microsoft.com/de-de/dotnet/api/system.datetime.month?view=net-7.0

                      SKB 1 Reply Last reply Reply Quote 0
                      • SKB
                        SKB Developer Most Active @Codierknecht last edited by SKB

                        @codierknecht sagte in "Heute 0:00 Uhr" eleganter berechen:

                        @skb sagte in "Heute 0:00 Uhr" eleganter berechen:

                        Ist in allen Sprachen Null-Indexiert.

                        Das sehe ich anders ... nur mal einige Beispiele:
                        https://www.php.net/manual/de/datetime.format.php
                        https://learn.microsoft.com/de-de/dotnet/api/system.datetime.month?view=net-7.0

                        W -> Numerische Darstellung eines Wochentags 0 (für Sonntag) bis 6 (für Samstag) bei PHP 🙂

                        Wäre ja auch doof, wenns nicht ähnlich/gleich wäre. Müsste man ja jedes Mal überlegen.

                        Welche Sprache schwebt dir denn vor, wo ein Array oder Index mit 1 beginnt?

                        Codierknecht 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @Codierknecht last edited by

                          @codierknecht sagte: Tag des Monats 0-basiert machen können

                          Der Tag hat keinen Namen.

                          1 Reply Last reply Reply Quote 1
                          • Codierknecht
                            Codierknecht Developer Most Active @SKB last edited by

                            @skb sagte in "Heute 0:00 Uhr" eleganter berechen:

                            Welche Sprache schwebt dir denn vor, wo ein Array oder Index mit 1 beginnt?

                            Es geht mir nicht um den Index eines Array. Das ist (bis auf vielleicht einige Basic-Dialekte) eigentlich immer 0-basiert. Da bin ich völlig bei Dir.

                            Es geht mir darum, dass das Ermitteln des Monats im Januar eine 0 liefert.
                            Und das ist in nahezu allen mir bekannten Sprachen halt anders.
                            Wie auch immer man den Monat ermittelt - im Januar erwartet so ziemlich jeder Entwickler in ziemlich jeder beliebigen Sprache eine 1 und keine 0. Das ist intuitiv. Um dann damit auf ein Array zuzugreifen ziehe ich halt noch 1 ab. Auch das ist intuitiv und muss keinem beim Lesen des Code erklärt werden.

                            @paul53 sagte in "Heute 0:00 Uhr" eleganter berechen:

                            Der Tag hat keinen Namen.

                            Für mich trotzdem eine recht lahme Begründung, bei der Ermittlung des Monats im Januar eine 0 zu liefern. Siehe oben.

                            SKB 1 Reply Last reply Reply Quote 0
                            • F
                              fastfoot @Codierknecht last edited by

                              @codierknecht sagte in "Heute 0:00 Uhr" eleganter berechen:

                              ...allerdings nicht mit JS

                              eben, hier im Forum geht es aber um JS und da hast Du nunmal ein irre grosses Entwicklungspotential.

                              No offence, alles ist gut, war auch nnicht böse gemeint. Du hast es aber geradezu herausgefordert 🙂

                              Codierknecht 1 Reply Last reply Reply Quote 2
                              • SKB
                                SKB Developer Most Active @Codierknecht last edited by

                                @codierknecht Konstante beginnen immer bei Null, das ist intuitiv, statt noch -1.

                                Welche Sprache nimmst Du denn, wo der Monat mit 1 beginnt?

                                Beispiel?

                                Codierknecht 1 Reply Last reply Reply Quote 0
                                • Codierknecht
                                  Codierknecht Developer Most Active @SKB last edited by

                                  @skb sagte in "Heute 0:00 Uhr" eleganter berechen:

                                  Welche Sprache nimmst Du denn, wo der Monat mit 1 beginnt?

                                  Siehe oben.
                                  C. C++, C#, PHP, Delphi ... such Dir was aus 😁
                                  Wenn ich den Monat eines Datums bestimme, bekomme ich im Januar eine 1 und keine 0.

                                  SKB 1 Reply Last reply Reply Quote 0
                                  • SKB
                                    SKB Developer Most Active @Codierknecht last edited by

                                    @codierknecht Monat bei PHP ja, Tag Nein bzw geht beides.

                                    Codierknecht 1 Reply Last reply Reply Quote 0
                                    • Codierknecht
                                      Codierknecht Developer Most Active @SKB last edited by

                                      @skb sagte in "Heute 0:00 Uhr" eleganter berechen:

                                      Monat bei PHP ja, Tag Nein bzw geht beides.

                                      Eben!
                                      Das mit den Wochentagen ist halt in jeder Sprache ein wenig anders gelöst.
                                      Mal 0-6, mal 1-7, mal mit dem Sonntag beginnend und mal nach ISO 8601 mit dem Montag.

                                      Aber selbst das mit dem Monat wäre eigentlich mit 'nem Array kein Problem, wenn man nicht rechnen will:

                                      monthNames = ['unknown', 'Januar', 'Februar', ...]
                                      
                                      SKB 1 Reply Last reply Reply Quote 0
                                      • SKB
                                        SKB Developer Most Active @Codierknecht last edited by

                                        @codierknecht Mir gefällt es mit 0 besser.

                                        Ist aber auch Gewohnheit - je nach Sprache.

                                        1 Reply Last reply Reply Quote 0
                                        • Codierknecht
                                          Codierknecht Developer Most Active @fastfoot last edited by

                                          @fastfoot sagte in "Heute 0:00 Uhr" eleganter berechen:

                                          da hast Du nunmal ein irre grosses Entwicklungspotential.

                                          für die paar Jahre lohnt sich das nicht mehr 😁

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

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          380
                                          Online

                                          31.8k
                                          Users

                                          80.0k
                                          Topics

                                          1.3m
                                          Posts

                                          6
                                          33
                                          744
                                          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