【发布时间】:2011-10-18 19:45:11
【问题描述】:
假设我有一个数字,表示从开始时间到现在所经过的分钟数。
我想创建一个函数,它返回与我传递给该函数的分钟对应的年、月、周和日。
这里是一个例子:
var minutes = 635052; // 635052 = (24*60)*365 + (24*60)*30*2 + (24*60)*14 + (24*60)*2 + 12;
getDataHR(minutes); // 1 year, 2 months, 2 week, 2 days, 12 minutes
function getDataHR (newMinutes) {
minutes = newMinutes;
.......
return hrData; // 1 year, 2 months, 2 week, 2 days, 12 minutes
}
实现结果的最佳方法是什么?
【问题讨论】:
-
你是否使用了 0 分钟的参考日期?计算正确的月份长度可能需要它。
-
是的,0 分钟的参考是当前日期。所以
var minutes = 2;表示从现在开始 2 分钟。 -
您必须更加精确才能得到一个体面的答案。 “月、周和日”是什么意思?今天是 10 月 18 日。从现在到 11 月 29 日的同一时间(距今 35 天)有多少个月、几周和几天?今天晚上 11:59 到明天凌晨 12:01 之间有多少天?零?一个?
-
使用 JavaScript 原生 Date 对象。
标签: javascript