【问题标题】:Search for value in variable Google Apps Script/JS在变量 Google Apps Script/JS 中搜索值
【发布时间】:2015-06-12 18:07:43
【问题描述】:

尝试确定 Google 日历中的日历事件是由用户自己创建还是执行了 CSV 批量上传。如果脚本在值的某处找到带有“CSV”的 ID,则将其删除。我尝试添加一个if 语句,它查看使用match 的变量“res”,我认为这是我错的部分:

 var id_s = ev.getId(); 

    var res = id_s.match(/CSVConvert/g);

    if (res = true)  {

如您所见,我仍然得到所有不包含“CSVConvert”的事件

这是我目前所拥有的:

function myFunction() {

  var calendarId = 'user.name@altostrat.com';

  var calendar = CalendarApp.getCalendarById(calendarId); 
  var events = calendar.getEvents(new Date('June 18, 2015 00:00:00 CST'), new Date('June 18, 2015 18:00:00 CST'));
  for(var i=0; i<events.length;i++){
    var ev = events[i];

    var id_s = ev.getId(); 

    var res = id_s.match(/CSVConvert/g);

    if (res = true)  {


      Logger.log("ID: " + ev.getId());
      Logger.log("TITLE: " + ev.getTitle());
      Logger.log("DATECREATED: " + ev.getDateCreated());
      Logger.log("LAST UPDATED: " + ev.getLastUpdated());

    }
    else{
      Logger.log("No event ID's contains: CSVConvert")
    }

  }
}

【问题讨论】:

  • 很好的问题,我第一次在这里看到动画......非常有趣;-)

标签: javascript google-apps-script google-calendar-api


【解决方案1】:

多使用 Logger 会为您提供解决方案,或者至少向您展示失败的地方。

试试这样:

Logger.log('match result = '+res);// when a match is found, res is equal to the matching string
if (res!=null)  { // otherwise it returns null

顺便说一句,equal 条件是==(双等号),在这种情况下我使用不等号(!=

【讨论】:

    猜你喜欢
    • 2018-01-19
    • 2021-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-26
    • 1970-01-01
    相关资源
    最近更新 更多