我有 2 个日期,我将其转换为 UNIX 时间戳 - 开始日期和确认日期。我从另一个中减去一个并得到如下数字:
-12643,
0,
3037,
1509,
-3069
基本上,我需要做的是在分钟内获得两个日期之间的差异,但我不知道如何将它们转换为 minutes。最终输出应该是这样的:-25, 13, 155
我有 2 个日期,我将其转换为 UNIX 时间戳 - 开始日期和确认日期。我从另一个中减去一个并得到如下数字:
-12643,
0,
3037,
1509,
-3069
基本上,我需要做的是在分钟内获得两个日期之间的差异,但我不知道如何将它们转换为 minutes。最终输出应该是这样的:-25, 13, 155
给定两个 UNIX 时间戳:a、b;您可以像这样在几分钟内计算它们之间的差异:
var a = 1377005400000; //2013-07-20 15:30
var b = 1377783900000; //2013-07-29 15:45
var dateA = new Date(a);
var dateB = new Date(b);
var dayRelativeDifference = dateB.getHours()*60 + dateB.getMinutes()
- dateA.getHours()*60 - dateA.getMinutes();
// dayRelativeDifference will be 15
var absoluteDifference = (b-a)/60
// absoluteDifference will be 12975000
你只需要除以 60。你已经有了两个时间戳之间的差异,所以上面的 Date 开销都不是必需的:
var diffs = new Array(-12643, 0, 3037, 1509, -3069);
for (var i = 0; i < diffs.length; i++)
document.write(diffs[i] % 60);
你是怎么得到原始数字的?我相信标准的 Unix 时间戳以秒为单位,所以你应该能够除以 60 得到分钟。但是,例如,JavaScript 中的 Date.now() 返回毫秒,因此您需要除以 60,000。