如何在node.js中查找当天下一个给定名称的日期

时间:2016-07-18 04:50:59

标签: node.js date

我必须在node.js中找到下一个给定日期的日期。

将日期视为2016-07-13(wednesday),我必须找到下一天的日期(ex monday, tuesday等)

假设其monday应该2016-07-18

修改

考虑日期2016-07-13,根据此日期,最近的星期一(期望)日期是什么。

修改

var target;
        if(desiredIndex < moment(start).day()){
            target = moment(start).day(7 + desiredIndex).toDate()
        } else {
            target = moment(start).day(desiredIndex).toDate();
        }

2 个答案:

答案 0 :(得分:1)

我会使用moment.js并使用.day()设置目标星期几,如下所示。下周加上7强制&#34;&#34;语义。

const moment = require('moment')
const dayOfWeekIndex = [
  'sunday',
  'monday',
  'tuesday',
  'wednesday',
  'thursday',
  'friday',
  'saturday']
const start = '2016-07-13'
const desired = 'tuesday' // change to suit taste.
const desiredIndex = dayOfWeekIndex.indexOf(desired)
// 7 means "next week"
const target = moment(start).day(7 + desiredIndex).toDate()
console.log(target)

答案 1 :(得分:0)

我要做的是使用Moment.js并使用moment.add(1, 'days').calendar();操作。

我会这样做,在函数内部将结果保存到日期对象中,在for循环中逐个添加,直到您的对象包含您想要获得的所需工作日,然后返回该日期。 / p>