javascript - 将 Google 工作表日期与 Google 日历事件日期进行比较

标签 javascript google-apps-script

Sheet 和 Google Calendar 中匹配的日期总是错误的,我如何格式化这两个日期以进行比较?

我试图格式化日期,即使它们看起来完全一样,但返回错误。

var Sheet_StartDate =  Spreadsheet.getActiveSheet().getRange(1,1).getValue();
var calendar = CalendarApp.getCalendarById('####');
var event = calendar.getEventById(eventId); 
var calendar_StartTime;

try {
  // Get all day event
  calendar_StartTime = event.getAllDayStartDate();          
}
catch (e) {

  //Multi-day event
  calendar_StartTime = event.getStartTime();

}


if (calendar_StartTime === Sheet_StartDate )
{
 //This comes back false 

}

最佳答案

试试这个:

function compareDates() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getActiveSheet();
  var dt=new Date(sh.getRange(1,1).getValue());
  var Sheet_StartDate_value=new Date(dt.getFullYear(),dt.getMonth(),dt.getDate()).valueOf();//This removes the time portion
  var calendar = CalendarApp.getCalendarById('####');
  var event = calendar.getEventById(eventId); 
  dt=new Date(event.getAllDayStartDate());
  var calendar_StartTime_value=new Date(dt.getFullYear(),dt.getMonth(),dt.getDate()).valueOf();      
  if(calendar_StartTime_value == Sheet_StartDate_value ) {
    //This will come back true if in fact they are the same date
  }
}

你也可以使用 Date().getTime()

关于javascript - 将 Google 工作表日期与 Google 日历事件日期进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58126075/

相关文章:

mobile - Google Sheets 自定义函数在移动应用程序中永远显示 "Loading..."

javascript - 处理drop事件时如何定位游标索引?

javascript - jQuery:如果选择元素存在则做一些事情

javascript - 如何使用谷歌脚本创建子菜单

javascript - 使用 Google Apps 脚本在 Gmail 中内嵌图像

jquery - Google Apps 脚本支持哪个版本的 jQuery?

javascript - 获取区域设置的货币符号

javascript - 打印网页而不显示打印对话框和此网页

javascript - 输入字段的数据格式不同——取决于输入的数据类型

google-apps-script - 从 Google Web App 中的 doPost() 重定向,带有 App 脚本的 HTML 表单