代码之家  ›  专栏  ›  技术社区  ›  SubSul

时刻,根据结束日期获取财务开始日期

  •  0
  • SubSul  · 技术社区  · 7 年前

    我有权访问财务结束日期,并需要计算财务开始日期的基础上。

    这就是我目前的逻辑。

    moment('2017-03-31', 'YYYY-MM-DD').quarter() 会给我四分之一,在这种情况下是1。

    然后我用

    moment('2017-03-31', 'YYYY-MM-DD').subtract(3, 'months').format('YYYY-MM-DD') 结果是在2016年12月31日,然后我做了各种黑客计算 2017-01-01

    有没有一种优雅的方法可以使用moment api计算开始日期。

    所以本质上,给定

    2017-03-31 ->输出: 2017~01-01

    2017-12-31 ->输出: 2017-10-01

    4 回复  |  直到 7 年前
        1
  •  1
  •   Luckness    7 年前
    let date = '2017-12-31'    
    moment(date).startOf('quarter').format('YYYY-MM-DD');
    
        2
  •  0
  •   Intellidroid    7 年前

    如果您的目标是从结束日期中减去3个月,然后得到开始日期(这是一个月的第一天),可以使用:

    moment().startOf('month');

    Moment Docs

        3
  •  0
  •   rkj    7 年前
    var d = moment('2017-03-31', 'YYYY-MM-DD').subtract(2, 'months').startOf('month').format('YYYY-MM-DD');
    

    http://jsfiddle.net/rLjQx/57925/

        4
  •  0
  •   Sandeep Raj Shakya    7 年前

    您可以使用如下:

    var date = moment('2017-03-31').subtract(2, 'month').startOf('month').format('YYYY-MM-DD');
    enter code here
    
    推荐文章