【问题标题】:Google Docs Script Issue with Split through Function通过函数拆分的 Google Docs 脚本问题
【发布时间】:2013-11-12 21:30:09
【问题描述】:

第一次在这里发布 Google Script 相关服务的海报,希望我把它放在正确的位置!我遇到了一个错误,我似乎找不到正确的术语来查找解决方案。下面是函数。在其中我有一个变量 string1,我将拆分应用于该变量。如果我硬编码字符串的值(在字符串中注释掉的行中),那么它可以工作并且我会收到正确的输出。另一方面,如果我尝试将该字符串从另一个函数传递给该函数,则会收到以下错误:

“类型错误:无法在对象中找到函数拆分 2013 年 10 月 30 日星期三 09:00:26 GMT-0400 (EDT),danno,ticket,netid,request,mac,Error - Invalid Mac / Mac Not Found。”

注意:我对函数的调用如下所示 - formatEmailRow(completeEmailArray[i])

function formatEmailRow(rowToFormat) {
  var formattedString = "";
  var array1 = [];
  var string1 = "";
  ///////////////////////
  string1 = rowToFormat;
  //string1 ="10/30/2013 9:00:26,danno,ticket,netid,request,mac,Error  - Invalid Mac / Mac Not Found ";
  ///////////////////////
  array1 = string1.split(",| ,|, ");
  if (array1 != ""){
  for (var i = 0; i < array1.length; i++) {
  formattedString = formattedString + "     " +(array1[i]);
  }}
  return formattedString;
  }

请帮忙! 提前感谢,任何建议表示赞赏!

-丹诺

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    您收到该错误是因为 .split() 不是包含在您传入的对象类型中的方法。由于您是新手,因此值得停下来阅读对象和方法 - this is a quick overview.

    你想接收一个字符串,但似乎你不是。问题在于调用formatEmailRow()的代码。

    我的猜测是您传递了一个数组 - 可能是一行中的所有单元格 - 但这是您可以检查的方法。

    将此行添加为函数的第一行:

    Logger.log("rowToFormat = " + JSON.stringify(rowToFormat));
    

    ... 然后运行,出现错误。检查日志 - 你想看看你得到一个简单的字符串。如果你得到一个数组,那么你知道你需要修复什么。 (也许你毕竟想得到数组!)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-15
      相关资源
      最近更新 更多