• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Warum funktioniert der Daten-Vergleich nur, wenn die Daten gleich sind?

Tabula_Rasa

Mitglied
Hallo zusammen,
ich versuche Objekte zu filtern, deren Daten zwischen zwei Daten zu finden sind:
Code:
          <input type="date" (change)="vonBisDatum(1,$event)"> bis &nbsp;
          <input type="date" (change)="vonBisDatum(2,$event)">

Die "vonBisDatum"-Funktion sieht wie folgt aus:

Code:
        date1: Date = new Date("1970-01-01");
        date2: Date = new Date();
        pattern = /(\d{2})\.(\d{2})\.(\d{4})/;

        vonBisDatum(num: number, e){
          if(num == 1)
            this.date1 = e.target.value;
          else if(num == 2)
            this.date2 = e.target.value;
         
          console.log(e);
          console.log(this.obj.filter(obj => new Date(ob.sDatum.replace(this.pattern, '$3-$2-$1')) >= new Date(this.date1) &&
                                                    new Date(order.sDatium.replace(this.pattern, '$3-$2-$1')) <= new Date(this.date1)));
        }

Die Objekte haben das Format ""dd.MM.yyyy". Deshalb nutze ich pattern um das Datum richtig zu formatieren.
Der Vergleich klappt nicht ganz. Nur wenn ich in das erste Input-Feld ein Datum eingebe und nur wenn es identisch zu einem Datum in einem Objekt ist, wird das Objekt angezeigt, ansonsten passiert da nichts, obwohl der Vergleich stimmen sollte. Sieht jemand, wo der Fehler ist?
 
Werbung:
Zurück
Oben