如何使用片刻JS从开始日期和结束日期获取周数。然后我想将它推入一个数组。如果一周超过一周,我想显示如下const result = [1, 2, 3];
const dateStart = moment(1517812701107).format('DD-MM-YYYY');
const dateEnd = moment(1518331101107).format('DD-MM-YYYY');
从这个开始日期和结束日期开始,我需要获取周数组的数字。是否有可能在moment
JS。
答案 0 :(得分:1)
首先,您还不想格式化日期,或者您只是拥有字符串表示形式,而不是片刻实例。一旦你完成了它,就像使用diff
一样简单:
const dateStart = moment(1517812701107);
const dateEnd = moment(1518331101107);
const weeksBetween = dateEnd.diff(dateStart, 'weeks');
至于将其转换为进展数组,您可以简单地遍历结果:
const result = []
for (let i = 1; i <= weeksBetween; i++) {
result.push(i)
}
您提供的时间戳相隔不到一周,结果为0
。如果您的目标是找到确切的比率,请为第三个变量添加浮点标记:
dateEnd.diff(dateStart, 'weeks', true); // 0.8571428571428571
答案 1 :(得分:0)
您可以尝试diff功能,请尝试以下代码。希望这会有所帮助。
const dateStart = moment(1507812701107);
const dateEnd = moment(1518331101107);
const result = Array(dateEnd.diff(dateStart, 'week')).fill().map((e,i)=>i+1)