Sandra: Datum, Wochentage,...

Hallo zusammen,

gibt es eine einfach Möglichkeit mit JavaScript, festzustellen ob wir heute den ersten, zweiten, dritten oder vierten Mittwoch des Monats haben???

Danke für Eure Tips!

Gruß Sandra

  1. Hallo zusammen,

    gibt es eine einfach Möglichkeit mit JavaScript, festzustellen ob wir heute den ersten, zweiten, dritten oder vierten Mittwoch des Monats haben???

    Ja, aber du musst dir das selber basteln.

    Date.getDay()
    Date.getDate()

    sollten dazu ausreichen.

    Struppi.

    1. Hallo Struppi

      Date.getDay()
      Date.getDate()

      sollten dazu ausreichen.

      Diese beiden Methoden sind mir wohlbekannt. Ich tue mir nur etwas schwer, meine Anfordrung damit abzudecken. Kannst Du mir einen Tip geben, wie ich anfangen muss???

      Gruß Sandra

      1. Hallo  Sandra

        heute ist Mittwoch der 13. der November hat 30 Tage,
        bedeutet, das es noch 2 Mittwoche werden bis der Nov vorbei ist.
        Und es erst einen Mittwoch im Nov. gegeben hat.
        Weil ja alle 7 tage wieder ein Mittwoch sein wird.
        Du muss also aus Tag (13) und gesamt Tage ermitteln wieviele es insgesamt geben kann.
        Ich hoffe das hilft Dir
        Gruß Burkhard

        1. Hallo zusammen,

          wollte nur schnell "Danke" sagen. Eure Tips haben mir echt weitergeholfen.

          Falls es Euch interessiert, wie ich vorgegangen bin:

          WeekOfMonth = 0;
          RecurringDay = stringToDate(arrRecurrenceParameters[1]).getDate();
          while (RecurringDay > 0){
            RecurringDay = RecurringDay - 7;
            WeekOfMonth++;
          }

          Gruße
          Sandra

          1. Hallo,

            WeekOfMonth = 0;
            RecurringDay = stringToDate(arrRecurrenceParameters[1]).getDate();
            while (RecurringDay > 0){
              RecurringDay = RecurringDay - 7;
              WeekOfMonth++;
            }

            so haben die alten mechanischen Rechenmaschinen gearbeitet. Schon mal was von "Dividieren" gehört?

            WeekOfMonth = RecurringDay/7 + 1 ;

            Gruß,     Jürgen

            1. Hallo,

              WeekOfMonth = 0;
              RecurringDay = stringToDate(arrRecurrenceParameters[1]).getDate();
              while (RecurringDay > 0){
                RecurringDay = RecurringDay - 7;
                WeekOfMonth++;
              }
              so haben die alten mechanischen Rechenmaschinen gearbeitet. Schon mal was von "Dividieren" gehört?

              ;-)
              Das war meine Idee, beim tippen hatte war mir noch nicht klar, was alles notwendig ist und schon war die Schleife da.
              (Ich mag while schleifen)

              WeekOfMonth = RecurringDay/7 + 1 ;

              Das stimmt aber leider nicht.
              Der 7.11 z.b. ist der 1. Donnerstag nach deiner Rechnung kommt aber 2 raus.

              Struppi.

              1. Hallo,

                WeekOfMonth = RecurringDay/7 + 1 ;

                Das stimmt aber leider nicht.
                Der 7.11 z.b. ist der 1. Donnerstag nach deiner Rechnung kommt aber 2 raus.

                stimmt! WeekOfMonth = (RecurringDay-1)/7 + 1 ; und das Ganze auch noch abgerundet wäre besser.

                Gruß,     Jürgen

                1. Hallo,

                  WeekOfMonth = RecurringDay/7 + 1 ;

                  Das stimmt aber leider nicht.
                  Der 7.11 z.b. ist der 1. Donnerstag nach deiner Rechnung kommt aber 2 raus.
                  stimmt! WeekOfMonth = (RecurringDay-1)/7 + 1 ; und das Ganze auch noch abgerundet wäre besser.

                  und jetzt als ganzes ;-)

                  function weekOfMonth(date)
                  {
                    if(!date) return null;
                    return pasrseInt((date.getDate() - 1) / 7 + 1);
                  }

      2. Hallo Struppi

        Date.getDay()
        Date.getDate()

        sollten dazu ausreichen.

        Diese beiden Methoden sind mir wohlbekannt. Ich tue mir nur etwas schwer, meine Anfordrung damit abzudecken. Kannst Du mir einen Tip geben, wie ich anfangen muss???

        Ich bin nicht 100% firm mit Datumsfunktionen, aber das scheint zumindest das richtige zu sein:

        function weekOfMonth(date)
        {
            if(!date) return null;
            var m1 = date.getDate();
            var anzahl = 0;
            while(m1 > 0)
            {
                anzahl++;
                m1 -= 7;
            }
            return anzahl;
        }

        date => Date Objekt.

        Struppi.

  2. Hallo  Sandra

    http://selfhtml.teamone.de/javascript/objekte/date.htm#get_day
    das wird dir helfen, aber bedenke das JS nur das Datum des users ermittelt, was lange nicht stimmen muss!
    Gruß Burkhard