如何使用 Google 脚本查找天数差异

How to find the number of days difference using Google Script

我试图找出两天之间的差异,结果是 NaN。

function formatDate(oldFormat,duration,timestamp){
  var formattedDate = Utilities.formatDate(oldFormat, "IST","yyyy,MM,dd");
  Logger.log(timestamp);
  var newDate=new Date(timestamp*1000);
  Logger.log(newDate);
  newDate=Utilities.formatDate(newDate,"IST","yyyy,MM,dd");
  Logger.log(formattedDate);
  Logger.log(newDate);
  var date1=new Date(formattedDate).getTime();
  Logger.log(date1)
  var date2=new Date(newDate).getTime();
  Logger.log(date2)
  var diff=daydiff(date2,date1);
  Logger.log(diff);   }

 function daydiff(first, second) {
 return (second-first)/(1000*60*60*24);}

如何找出两个日期之间的天数差异?我有这种格式的日期: 日期 1 : 2015,05,12

日期 2:2015 年 5 月 28 日

没有必要使用 Utilities.formatDate() 因为它是为了将正常日期转换为任何格式,而不是相反。

也不确定 (oldFormat,duration,timestamp) 代表什么。您没有在脚本中使用 duration,而且您显示的两个日期似乎格式相同。

如果您只是想找出两个日期之间的差异,试试这个:

function formatDate(date1,date2){
  date1 = new Date(fixDate(date1));
  date2 = new Date(fixDate(date2));
  var diff = (date2-date1)/(1000*60*60*24);
  return(diff);
}

function fixDate(date){  
    var collector = date;
    if (collector.match(",")!=null){
      collector = collector.split(",");
      var myString = [collector[1], collector[2], collector[0]].join("/");
      return myString
    }
  }