作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
流行的漫画 xkcd 提出了这个将时间完整转换为日期的等式:
我一直在尝试在 JavaScript 中做同样的事情,尽管我不断得到 -Infinity
。这是代码:
var p = 5; // Percent Complete
var today = new Date();
today = today.getTime();
var t;
t = (today) - (Math.pow(Math.E, (20.3444 * Math.pow(p,3))) -
Math.pow(Math.E,3));
document.write(t + " years");
Time 将返回一个巨大的数字(毫秒),而且我知道该等式并不意味着处理毫秒 - 那么如何使用 JavaScript 进行高级日期等式呢?
最佳答案
你犯了 3 个错误:
p
应该是 0 到 1 之间的小数,表示完成进度的比率。T =(当前日期)-(以年为单位的数字)
T =(当前日期 - 一个数字)以年为单位
(e^…-e^3)
然后从 t
+3
编辑:
这是一些 working code as a JSFiddle , 尽管 Javascript 在完成大约 75% 时用完了日期
关于javascript - '时光倒流' xkcd,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12262402/
我是一名优秀的程序员,十分优秀!