将小数周转换为小数

时间:2011-12-15 12:18:05

标签: javascript math decimal fractions

我正在努力解决这个基于数学的查询。

我有两个日期之间的秒数差异,并希望将秒数转换为分数。我有小数点运算良好,但我正在努力弄清楚如何将这个值转换为分数。

因此,例如,两个时间戳之间的周数差异为4.285714285714286。我想将其表示为4 2/7

有人能建议在JavaScript中实现这一目标的最有效方法吗?

1 个答案:

答案 0 :(得分:1)

也许我不理解你的问题,所以这可能是一个非常幼稚的答案。如果是的话,就这么说吧。

var
  a = new Date(2011, 12, 31),
  b = new Date(2011, 12, 1),
  weekMilliSeconds = 7 * 24 * 60 * 60 * 1000,
  fraction = (a - b)  / weekMilliSeconds,
  weeks = Math.floor(fraction),
  days = Math.round((fraction - weeks) * 7);

console.log(
  weeks + ' ' + days + '/7'  // => 4 2/7
);