【问题标题】:Javascript calendar non-sequential monthsJavascript 日历非连续月份
【发布时间】:2016-02-17 01:42:18
【问题描述】:

我是 JavaScript 新手,我创建了一个日历来显示给定年份的所有 12 个月,并希望能够添加随机月份以在查询中使用。我现在可以做这部分但是我如何轻松检查月份是否是连续的,记住它们可以按任何顺序选择。示例:JAN、FEB MAR 或 FEB、MAR、JAN 应用程序将显示 JAN 1 至 MAR 30,但 Jan 和 APR 将显示一条消息,说明您选择了非连续值。

【问题讨论】:

  • 如果 month1 +- 1 of month2 then...

标签: javascript calendar


【解决方案1】:

由于日期选择已经限制为一年,因此可以进行简单的比较。此外,您可以轻松地对日期进行预排序(如图所示)以帮助用户进行选择。

示例:

var month, dates = [new Date('2016-10-01'), new Date('2016-11-01'), new Date('2016-12-01')];

// optional date sort
// dates.sort(function(a,b){ return a < b ? -1 : a > b ? 1 : 0 });

month = dates[0].getMonth();

if (dates[1].getMonth() == (month + 1) && dates[2].getMonth() == (month + 2)) {

  console.info('okay');

} 
else {

  console.info('fail');

}

console.info(JSON.stringify(dates, null, '  '));

【讨论】:

    猜你喜欢
    • 2011-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多