2016-12-14 3 views
0

Ich versuche, ein Array-Objekt in ein anderes in Typoskript zu schieben. Hier ist das, was ich habe:kombinieren 2 Array-Objekte typescript

days: DayDto[]; 

while (startsOn.toDate() < endsOn.toDate()) 
      { 

       var newDate = startsOn.add(1, 'days'); 
       startsOn = moment(newDate); 

       let d = this.getDayOfWeek(newDate.isoWeekday()) + newDate.date().toString(); 
       let w = this.getDayOfWeek(newDate.isoWeekday()) == "Sa" ? true : this.getDayOfWeek(newDate.isoWeekday()) == "Su" ? true : false; 

       this.temp = new DayDto; 

       this.temp.dayOfMonth = d; 
       this.temp.weekEnd = w; 
       this.temp.payPeriodEnd = "S31"; 

       //this.days.push(
       // [ 
       //  new DayDto(d, w, "S31") 
       // ] 
       //); 
      } 

Also, ich habe eine Schleife, die während startsOn weniger als endsOn, es durchläuft und bekommt den Tag der Woche (Su) und den Tag des Monats (21) und legt diese in d und w. Diese werden dann am Ende jeder Schleife in das this.days-Array eingefügt. Aber ich kann nicht die Logik korrekt für das Hinzufügen von ihnen zu dem Array.

+1

Was ist Ihre Frage? Was ist die erwartete Ausgabe? – Alp

+0

Ich habe meine Frage aktualisiert. – ayordy67

Antwort

0

Ich weiß nicht, ob ich Ihre Frage vollständig verstanden habe.

Wenn days ist DayDto[]:

class DayDto { 
    constructor(
     public dayOfMonth: number, 
     public weekEnd: number, 
     public payPeriodEnd: string 
    ) {} 
} 

var days: DayDto[] = []; 

days.push(
    new DayDto(5, 5, "S31") 
); 

Wenn days ist DayDto[][]:

class DayDto { 
    constructor(
     public dayOfMonth: number, 
     public weekEnd: number, 
     public payPeriodEnd: string 
    ) {} 
} 

var days: DayDto[][] = []; 

days.push(
    [ 
     new DayDto(5, 5, "S31"), 
     new DayDto(5, 5, "S31") 
    ] 
); 
+0

Ich erhalte einen Fehler im ersten Beispiel. Mitgelieferte Parameter stimmen nicht mit einer Signatur des Anrufziels überein. – ayordy67

+0

habe ich versucht, auf http://www.typescriptlang.org/play und es scheint hier gut zu funktionieren –

+0

ist meine day.dto.ts Klassendeklaration {Namensraum-Bidding { Export Klasse DayDto { TagDesMonats: string; weekEnd: boolean; payPeriodEnd: Zeichenfolge; } }} – ayordy67