【问题标题】:Calculating difference between two dates in Google Apps Script在 Google Apps 脚本中计算两个日期之间的差异
【发布时间】:2017-11-29 04:32:25
【问题描述】:

我从如下 API 调用中获取日期时间:

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

现在我想将它与今天的日期进行比较并计算天数的差异,我该如何在谷歌应用程序脚本中做到这一点。

感谢您的帮助。

【问题讨论】:

    标签: javascript google-apps-script


    【解决方案1】:

    我认为你可以这样做,

    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);
    

    【讨论】:

    • getTime 这样有问题,Cooper 的方法对我更有效。
    【解决方案2】:

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

    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);
    }
    

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-01
      • 1970-01-01
      • 2018-11-29
      • 2021-11-25
      • 2011-08-01
      • 2011-05-16
      相关资源
      最近更新 更多