组合2个数组对象打字稿

时间:2016-12-14 00:29:25

标签: javascript arrays typescript

我正在尝试将一个数组对象推送到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")
                //    ]
                //);
            }

所以,我有一个循环,当startsOn小于endsOn时,它循环并获取星期几(Su)和月份日期(21)并将它们放入d和w。然后将它们放在每个循环结束时的this.days数组中。 但我无法将逻辑正确添加到数组中。

2 个答案:

答案 0 :(得分: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")
    ]
);

答案 1 :(得分:0)

typescript支持es6,如果你想组合两个数组,你可以做这样的事情

var arr1 = [0, 1, 2];
var arr2 = [3, 4, 5];
arr1.push(...arr2);

有关详细信息,https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Spread_operator,您的问题不明确。

相关问题