在Google Apps脚本中计算两个日期之间的差异

Gel*_*Ram 4 javascript google-apps-script

我从API调用获取日期时间,如下所示:

2017-11-21T20:23:26 + 0000

现在,我想将其与今天的日期进行比较,并计算天数的差额,我该如何在Google Apps脚本中做到这一点。

谢谢您的帮助。

Coo*_*per 11

以下是采用不同方法的几天、几分钟和几小时:

function getDaysHoursAndMinutes(){
  var hd=new Date('2017-11-21T20:23:26+0000').valueOf();
  var td=new Date().valueOf();
  var sec=1000;
  var min=60*sec;
  var hour=60*min;
  var day=24*hour;
  var diff=td-hd;
  var days=Math.floor(diff/day);
  var hours=Math.floor(diff%day/hour);
  var minutes=Math.floor(diff%day%hour/min);
  Logger.log('%s days %s hours %s minutes',days,hours,minutes);
}
Run Code Online (Sandbox Code Playgroud)

基本思想是日期的值是给定日期时间参考的毫秒数,我认为在这种情况下是 1970 年 1 月 1 日。


Sud*_*oti 7

我想你可以做这样的事情,

var dt1 = new Date(), // today's date
    dt2 = new Date("2017-11-21T20:23:26+0000"); // your date from API

// get milliseconds
var t1 = dt1.getTime(),
    t2 = dt2.getTime();

var diffInDays = Math.floor((t1-t2)/(24*3600*1000));
// 24*3600*1000 is milliseconds in a day
console.log(diffInDays);
Run Code Online (Sandbox Code Playgroud)

  • getTime 这样有问题,Cooper 的方法更适合我。 (3认同)