网站搜索

javascript - 我如何显示带年份的上个月?


我已将日期 Nov. 1, 2020 存储在变量 fiscalYearStart 中,并想输出 Oct. 2020。你能告诉我如何做到吗?我写了一个函数,但收到消息 ERROR TypeError: fiscalYearStart.getMonth is not a function

我的函数:

public getLastMonth () {
    this.navService.getBeginningOfFiscalYear().subscribe((yearResp: any) => {
      if (yearResp && yearResp.success) {
        const fiscalYearStart = yearResp.fiscalYearStart;
        fiscalYearStart.setMonth(fiscalYearStart.getMonth() - 1);
        const lastMonth = new Date(fiscalYearStart);
        console.log(lastMonth);
      }
    });
  }

答案#1

你应该使用 Date 构造函数,因为 fiscalYearStart 是一个字符串,并且没有 getMonth 方法。

const fiscalYearStart = new Date(yearResp.fiscalYearStart);

答案#2

public getLastMonth () {
    this.navService.getBeginningOfFiscalYear().subscribe((yearResp: any) => {
      if (yearResp && yearResp.success) {
        const fiscalYearStart = new Date(yearResp.fiscalYearStart);
        fiscalYearStart.setMonth(fiscalYearStart.getMonth() - 1);
        const lastMonth = new Date(fiscalYearStart);
        console.log(lastMonth);
      }
    });
  }