将数组值传递给URL缩短了抛出异常的方法

时间:2015-02-04 07:00:26

标签: google-apps-script try-catch url-shortener google-url-shortener

我试图将数组值传递给url shorten方法并获得url的缩短形式,但问题是,即使获得输出,异常也会抛出catch块(异常:无效值) )。我不知道为什么会这样。有人可以纠正我错在哪里,这是正确的做法吗? 我的代码:
    var lng = sheet.getRange(2, 1, sheet.getLastRow()).getValues(); try { for(var i in lng) { var url = UrlShortener.Url.insert({ longUrl: lng[i]}); Logger.log(url.id); } } catch(e) { Logger.log(e); }

1 个答案:

答案 0 :(得分:0)

您引用lng[i]的方式是错误的。您已将单维数组lng[i]中的第一个值设为lng[i][0]

对代码进行了一些更改。试试这个

function shorturl()
{
  var sheet = SpreadsheetApp.getActiveSheet();
  var lng = sheet.getRange(2, 1, sheet.getLastRow()).getValues();
  try
     {
       for(var i=0;i<lng.length; i++)
       {
         if(lng[i][0])
         {
           var url = UrlShortener.Url.insert({ longUrl: lng[i][0]});
           Logger.log(url.id);
         }
       }
    }
    catch(e)
    {
      Logger.log(e);
    }
}

希望有所帮助!