rrule

处理日历复发规则
授权协议 MIT
开发语言 JavaScript
所属分类 Web应用开发、 常用JavaScript包
软件类型 开源软件
地区 不详
投 递 者 黄扬
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

rrule 是一个处理日历日期复发规则的 JavaScript 库。

rrule.js 支持在 iCalendar RFC 定义的复发规则,这是从优秀的 python-dateutil 库的 RRULE 模块的部分端口。最重要的是,它支持解析和序列化自然语言的复发规则。

使用示例

// Create a rule:
var rule = new RRule({
    freq: RRule.WEEKLY,
    interval: 5,
    byweekday: [RRule.MO, RRule.FR],
    dtstart: new Date(2012, 1, 1, 10, 30),
    until: new Date(2012, 12, 31)
});
// Get all occurrence dates (Date instances):
rule.all();
['Fri Feb 03 2012 10:30:00 GMT+0100 (CET)',
 'Mon Mar 05 2012 10:30:00 GMT+0100 (CET)',
 'Fri Mar 09 2012 10:30:00 GMT+0100 (CET)',
 'Mon Apr 09 2012 10:30:00 GMT+0200 (CEST)',
 /* … */]
// Get a slice:
rule.between(new Date(2012, 7, 1), new Date(2012, 8, 1))
['Mon Aug 27 2012 10:30:00 GMT+0200 (CEST)',
 'Fri Aug 31 2012 10:30:00 GMT+0200 (CEST)']
// Get an iCalendar RRULE string representation:
// The output can be used with RRule.fromString().
rule.toString();
"FREQ=WEEKLY;DTSTART=20120201T093000Z;INTERVAL=5;UNTIL=20130130T230000Z;BYDAY=MO,FR"
// Get a human-friendly text representation:
// The output can be used with RRule.fromText().
rule.toText()
"every 5 weeks on Monday, Friday until January 31, 2013"
 相关资料
  • 问题内容: 我有一个来自我的应用程序的时间戳值。用户可以在任何给定的本地TimeZone中。 由于此日期用于假定给定时间始终为格林尼治标准时间的Web服务,因此我需要将用户的参数从(EST)转换为(GMT)。这是一个关键点:用户忽略了自己的TZ。他输入了要发送给WS的创建日期,所以我需要的是: 用户输入: 2008年5月1日下午6:12(美国东部标准时间) WS的参数必须为:2008年5月1日下午

  • 我是一个新手,学习很快。我正在尝试创建基于规则的假日日历。实施了一套规则,根据假日或工作日的日期确定 我创建了规则文件和类,似乎正在运行 规则文件 java类文件 但现在我想实施两条规则 如果nextdate是假日,nextdate是周末1,则isholdate=true 如果previousdate是假日,而previousdate是周末2,那么isholday=true 我在CheckDay类

  • 1.【强制】获取单例对象需要保证线程安全,其中的方法也要保证线程安全。 说明:资源驱动类、工具类、单例工厂类都需要注意。 2.【强制】创建线程或线程池时请指定有意义的线程名称,方便出错时回溯。 正例: public class TimerTaskThread extends Thread { public TimerTaskThread(){ super.setName("

  • 本文向大家介绍批处理万年历实现代码(包括农历日期),包括了批处理万年历实现代码(包括农历日期)的使用技巧和注意事项,需要的朋友参考一下 核心源码 以下是各计算部分算法: 计算星期: 基姆拉尔森计算公式 W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日数+1,m表示月份数,y表示年数。 注意:在公式中有个与其他公式不同的地方: 把一月

  • 日志记录和写入由\think\Log类完成,通常我们使用think\facade\Log类进行静态调用。 由于日志记录了所有的运行错误,因此养成经常查看日志文件的习惯,可以避免和及早发现很多的错误隐患。 5.1的日志遵循PSR-3规范 [TOC=2,3] 日志配置 日志的配置文件是配置文件目录下的log.php文件,如果需要针对不同的模块设置不同的日志类型,则需要在模块配置目录下的log.php中

  • 程序应该处理如果redis数据丢失时的清理redis内存和重新加载的过程。