javascript - 如何使用 moment JS 获取开始日期和结束日期的周数

标签 javascript momentjs

如何使用 moment JS 从开始日期和结束日期获取周数。然后我想将它插入一个数组。如果一周超过一周,我想这样显示 const result = [1, 2, 3];

const dateStart = moment(1517812701107).format('DD-MM-YYYY');
const dateEnd = moment(1518331101107).format('DD-MM-YYYY');

从这个开始日期和结束日期我需要获取周数组的数字。 moment JS 中可以吗?

最佳答案

首先,您还不想格式化日期,否则您将只有一个字符串表示形式,而不是一个时刻实例。一旦你解决了这个问题,它就像使用 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

来源: https://momentjs.com/docs/#/displaying/difference/

关于javascript - 如何使用 moment JS 获取开始日期和结束日期的周数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48690794/

相关文章:

javascript - 如何在现有的 momentjs 对象中获取没有时间的日期?

javascript - 迭代表列并获得最快的时间

javascript - .NET 的 DateTime.Date 属性的 javascript 等价物是什么?

javascript - 查找日期晚于当前日期的对象

javascript - jQuery多个id设置多个模式

javascript - 在 jQuery 中制作 DOM 的副本

javascript - 添加对象数组中包含的值

javascript - 使用 webpack 和 babel 的动态 import() 语法错误

javascript - Javascript 中是否有类似于 Python 中的算术运算符方法的东西

javascript - 无法使用语言环境 en 解析月份三个字母的月份