【发布时间】:2017-04-25 18:57:47
【问题描述】:
我正在使用 jira rest api 来解决问题。问题估计时间以秒数形式返回 - 但基于每周 5 天、每天 8 小时。
因此,例如,1d 的估计时间被返回为 28800 秒
我有这段代码可以做我想做的事,但它有异味,我想知道是否有更好的函数来做我想做的事
let es = 246180; // time (number of *work* seconds) is "1w 3d 4h 23m"
let sInMin = 60;
let sInHour = (60 * 60);
let sInDay = (sInHour * 8);
let sInWeek = (sInDay * 5);
let w = Math.trunc(es / sInWeek);
let d = Math.trunc((es - (w * sInWeek)) / sInDay);
let h = Math.trunc((es - (w * sInWeek) - (d * sInDay)) / sInHour);
let m = Math.trunc((es - (w * sInWeek) - (d * sInDay) - (h * sInHour)) / sInMin);
console.log(w,d,h,m) // 1 3 4 23
如果我将moment 和moment-duration-format 添加到组合中,我可以这样做
moment.duration({w,d,h,m}).format("w[w] d[d] h[h] m[m]")
获得神奇的1w 3d 4h 23m字符串
我该如何改进?
【问题讨论】:
标签: javascript time momentjs jira-rest-api