date
Description
一组日期格式化工具集合
date: DateHelpers
Details
date 对象提供了多种操作日期的方法:
add (date, number, unit): Date - 通过增加或减少指定时间单位来调整给定的日期
- date - (Date) 需要修改的日期
- number - (number) 要添加(正数)或减去(负数)的单位数量
- unit - (string) 时间单位:'minute', 'hour', 'day', 'week', 'month', 'year'。
//给指定日期加1年:2019年6月29日 -> 2020年6月29日
var newDate = gantt.date.add(new Date(2019, 05, 29), 1, 'year');add_quarter (date, number): Date - 给日期添加或减少若干季度(每季度3个月)
- date - (Date) 需要调整的日期
- number - (number) 要添加(正数)或减去(负数)的季度数
//给指定日期加1个季度(3个月):
//2019年6月29日 -> 2019年9月29日
var newDate = gantt.date.add_quarter(new Date(2019, 05, 29), 1);convert_to_utc (date): Date - 将本地时间转换为UTC时间
- date - (Date) 需要转换的日期
//2019年6月29日14:00(本地时间) -> 2019年6月29日12:00(UTC时间)
var time = gantt.date.convert_to_utc(new Date(2019, 05, 29, 14, 00));copy (date): Date - 复制一个Date对象的副本
- date - (Date) 需要复制的日期
var copy = gantt.date.copy(new Date(2019, 05, 29));// -> 2019年6月29日date_part (date): Date - 将日期的时间部分重置为午夜(00:00:00)
- date - (Date) 需要调整的日期
//2019年6月29日14:30:10 -> 2019年6月29日00:00:00
var date = gantt.date.date_part(new Date(2019, 05, 29, 14, 30, 10));date_to_str (format, utc): Function - 生成一个函数,将Date对象转换为格式化字符串
- format - (string) 期望的日期格式(参见 日期格式规范)
- utc? - (boolean) 是否将本地时间转换为UTC
var formatFunc = gantt.date.date_to_str("%d/%m/%Y");
var date = formatFunc(new Date(2019, 05, 29)); // -> "29/06/2019"day_start (date): Date - 将日期时间设置为午夜,与 date_part 相同。此方法用于Day视图确定显示日期,且可自定义
- date - (Date) 需要调整的日期
//2019年6月29日14:30:10 -> 2019年6月29日00:00:00
var date = gantt.date.day_start(new Date(2019, 05, 29, 14, 30, 10));getISOWeek (date): number - 返回日期对应的ISO-8601周数,周一为一周的第一天
- date - (Date) 需要计算的日期
var week = gantt.date.getISOWeek(new Date(2019, 05, 29));// ->26getUTCISOWeek (date): number - 将本地时间转换为UTC后,返回该日期的周数
- date - (Date) 需要计算的日期
var week = gantt.date.getUTCISOWeek(new Date(2019, 05, 29));// ->26getWeek (date): number - 返回日期的周数,周起始日根据 start_on_monday 中配置可为周一或周日
- date - (Date) 需要计算的日期
// 周从周日开始
gantt.config.start_on_monday = false;
var isoWeek = gantt.date.getISOWeek(new Date(2019, 2, 25)); // ->12
var week = gantt.date.getWeek(new Date(2019, 2, 25)); // ->13month_start (date): Date - 返回给定日期所在月份的第一天,时间重置为午夜
- date - (Date) 需要调整的日期
//2019年6月29日14:30 -> 2019年6月1日00:00
var firstDay = gantt.date.month_start(new Date(2019, 05, 29, 14, 30));parseDate (date, format): Date - 将指定格式的字符串转换为Date对象
- date - (string) 日期字符串
- format - (string) 日期字符串的格式(参见 日期格式规范)
var date = gantt.date.parseDate("29/06/2019","%d/%m/%Y");//-> 2019年6月29日00:00:00str_to_date (format, utc): Function - 创建一个函数,将指定格式的字符串转换为Date对象
- format - (string) 预期的日期格式(参见 日期格式规范)
- utc? - (boolean) 是否将本地时间转换为UTC
var formatFunc = gantt.date.str_to_date("%d/%m/%Y");
var date = formatFunc("29/06/2019"); // -> 2019年6月29日00:00:00time_part (date): number - 返回Date对象的时间部分,以午夜起算的秒数表示
- date - (Date) 需要计算的日期
var time = gantt.date.time_part(new Date(2019, 05, 29, 14, 30, 10));to_fixed (num): string - 格式化小于10的数字,前面补零;10及以上数字保持不变,返回字符串
- num - (number) 需要格式化的数字
var num1 = gantt.date.to_fixed(2);// ->"02"
var num2 = gantt.date.to_fixed(10);// ->10minute_start (date): Date - 返回秒数置零的日期,保留年、月、日、小时和分钟
- date - (Date) 需要调整的日期
//2019年6月29日14:30:10 -> 2019年6月29日14:30:00
var date = gantt.date.minute_start(new Date(2019, 05, 29, 14, 30, 10));hour_start (date): Date - 返回分钟和秒数均置零的日期,保留年、月、 日和小时
- date - (Date) 需要调整的日期
//2019年6月29日14:30:10 -> 2019年6月29日14:00:00
var date = gantt.date.hour_start(new Date(2019, 05, 29, 14, 30, 10));week_start (date): Date - 返回给定日期所在周的第一天,时间重置为午夜
- date - (Date) 需要调整的日期
//2019年6月29日14:30 -> 2019年6月24日00:00
var weekStart = gantt.date.week_start(new Date(2019, 05, 29, 14, 30));quarter_start (date): Date - 返回给定日期所在季度的首月,时间重置为午夜
- date - (Date) 需要调整的日期
//2019年6月29日14:30:10 -> 2019年4月1日00:00:00
var date = gantt.date.quarter_start(new Date(2019, 05, 29, 14, 30, 10));year_start (date): Date - 返回给定日期所在年的第一天,时间设置为午夜
- date - (Date) 需要调整的日期
//2019年6月29日14:30 -> 2019年1月1日00:00
var yearStart = gantt.date.year_start(new Date(2019, 05, 29, 14, 30));