2016-12-14 98 views
0

我想推入一個數組對象到打字稿中的另一個。 這裏是我有:結合2陣列對象打字稿

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") 
       // ] 
       //); 
      } 

所以,我有一個循環,而startsOn比endsOn少,它遍歷並得到周(SU)和該月的一天(21日)並把它們放到d和w中。那麼在每個循環結束時將這些數據放入this.days數組中。 但我不能得到正確的邏輯將它們添加到數組。

+1

你的問題是什麼?預期產出是多少? – Alp

+0

我更新了我的問題。 – ayordy67

回答

0

我不知道我是否完全理解了你的問題。

如果daysDayDto[]

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

var days: DayDto[] = []; 

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

如果daysDayDto[][]

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

第一個示例中出現錯誤。提供的參數不匹配呼叫目標的任何簽名。 – ayordy67

+0

我試着http://www.typescriptlang.org/play,它似乎做工精細 –

+0

這裏是我的day.dto.ts類的聲明{命名招標 { 出口類DayDto { 請將dayOfMonth:串; weekEnd:boolean; payPeriodEnd:string; } }} – ayordy67