📜  D3.js | d3.utcDay()函数(1)

📅  最后修改于: 2023-12-03 15:00:19.256000             🧑  作者: Mango

D3.js | d3.utcDay()函数

在D3.js库中,d3.utcDay()是一种时间间隔函数,它返回相邻两天之间的时间间隔。

语法
d3.utcDay([date])

其中,可选参数date表示指定的日期,默认为当前日期。

返回值

返回表示两个相邻天之间时间间隔的对象。这个对象有以下方法:

  • floor(date) 将给定的日期舍入为此间隔的最接近的较早的日期。

  • round(date) 将给定的日期四舍五入为此间隔的整数日期。

  • ceil(date) 将给定的日期舍入为此间隔的最接近的较晚的日期。

  • offset(date, step) 将给定的日期偏移step个单位间隔,step可以为负数。如果step量过大,会被递归地向相邻间隔递归。

  • range(start, stop, step) 返回从start到stop(包括)以step为间隔的所有日期构成的数组。

示例
var day = d3.utcDay(new Date(Date.UTC(2018, 8, 17, 14, 33, 59))); 
//day为表示"2018/09/17"和"2018/09/18"时间间隔的对象

day.floor(new Date(Date.UTC(2018, 8, 17, 16, 40, 15))); 
//将给定的日期2018/09/17 16:40:15舍入为2018/09/17 00:00:00

day.round(new Date(Date.UTC(2018, 8, 17, 16, 40, 15))); 
//将给定的日期2018/09/17 16:40:15四舍五入为2018/09/18 00:00:00

day.ceil(new Date(Date.UTC(2018, 8, 17, 16, 40, 15))); 
//将给定的日期2018/09/17 16:40:15舍入为2018/09/18 00:00:00

day.offset(new Date(Date.UTC(2018, 8, 17, 16, 40, 15)), -5); 
//将给定的日期往前5个间隔单位,即间隔为2018/09/12和2018/09/13的时间间隔

day.range(new Date(Date.UTC(2018, 8, 17, 14, 33, 59)), new Date(Date.UTC(2018, 8, 20, 14, 33, 59))); 
//返回数组["2018/09/17", "2018/09/18", "2018/09/19", "2018/09/20"],即从2018/09/17到2018/09/20间隔为1天的所有日期。

总结一下,d3.utcDay()函数返回表示两个相邻天之间时间间隔的对象,可方便地进行日期的计算和处理。