Javascript 如何从typescript中的字符串中减去Day?

Javascript 如何从typescript中的字符串中减去Day?,javascript,angular,typescript,Javascript,Angular,Typescript,我需要帮助从endDate中减去一天-但是endDate是字符串 试过这个: moment(this.endDate).subtract(1, 'day').format() 不起作用 public ngOnChanges(): void { const startDate = this.startDate ? moment(this.startDate).format() : moment().startOf('day').format(); const endDate =

我需要帮助从
endDate
中减去一天-但是
endDate
是字符串

试过这个:

moment(this.endDate).subtract(1, 'day').format()
不起作用

 public ngOnChanges(): void {
    const startDate = this.startDate ? moment(this.startDate).format() : moment().startOf('day').format();
    const endDate = this.endDate ? moment(this.endDate).format() : moment(startDate).endOf('day').format();
    this.datePicker = new DatePicker(startDate, endDate);
    this.setDatePicker();

    if (this.continiousDatesValue !== null) {
        this.continiousDatesValueMoment = moment(this.continiousDatesValue);
    }
    if (this.previousDatesValue !== null) {
        this.previousDatesValueMoment = moment(this.previousDatesValue);
    }
}
在这里,我还应该从“endDate”中减去一天,即字符串:

private onDatesChange(): void {
        this.startDateChange.emit(this.datePicker.startDate);
        this.endDateChange.emit(this.datePicker.endDate);
        this.startEndDateChange.emit({startDate: this.datePicker.startDate, endDate: this.datePicker.endDate});
        this.isOpen = false;
    }

将减去的日期设置为日期对象

let endDate=“2018-04-01 08:14:00”;
let dateOb=新日期(endDate);
dateOb.setDate(dateOb.getDate()-1);
console.log(dateOb);
//现在,您可以使用moment解析为所需的格式
//或
endDate=dateOb.getFullYear()+“-”+('0'+(dateOb.getMonth()+1)).slice(-2)+“-”+('0'+dateOb.getDate()).slice(-2)+”:“+('0'+dateOb.getMinutes()).slice(-2)+:“+('0'+dateOb.getSeconds()).slice(-2);
//getMonth()从0开始。

console.log(endDate)
将减去的日期设置为日期对象

let endDate=“2018-04-01 08:14:00”;
let dateOb=新日期(endDate);
dateOb.setDate(dateOb.getDate()-1);
console.log(dateOb);
//现在,您可以使用moment解析为所需的格式
//或
endDate=dateOb.getFullYear()+“-”+('0'+(dateOb.getMonth()+1)).slice(-2)+“-”+('0'+dateOb.getDate()).slice(-2)+”:“+('0'+dateOb.getMinutes()).slice(-2)+:“+('0'+dateOb.getSeconds()).slice(-2);
//getMonth()从0开始。

console.log(endDate)
momentjs希望日期以MM-DD-YYYY格式或YYYY-MM-DD格式进行操作。
所以,请以类似的格式提供日期,或者您可以使用Ashish Ranjan提出的解决方案。

momentjs希望以MM-DD-YYYY格式或YYYY-MM-DD格式处理日期。
所以请以类似的格式提供日期,或者您可以使用Ashish Ranjan提出的解决方案。

可以共享日期的样本字符串吗?可以共享日期的样本字符串吗?