这是Google Script相关服务的第一次海报,希望我把它放在正确的位置!我遇到了一个错误,我似乎无法找到正确的术语来查找解决方案。以下是功能。在其中我有一个变量,string1,我应用拆分。如果我硬编码字符串的值(在字符串中注释掉的行中),那么它可以工作,我收到正确的输出。另一方面,如果我尝试将该字符串传递给另一个函数的函数,我收到以下错误:
“TypeError:无法在对象中找到功能拆分2013年10月30日09:00:26 GMT-0400(EDT),danno,ticket,netid,request,mac,Error - 找不到无效的Mac / Mac。”
注意:我对该函数的调用如下所示: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;
}
请帮忙! 提前谢谢,任何建议表示赞赏!
-Danno
答案 0 :(得分:0)
您收到该错误是因为.split()
不是您传入的对象类型中包含的方法。由于您是新手,因此暂停阅读对象和方法 - this is a quick overview。
你想收到一个字符串,但似乎你不是。问题在于调用formatEmailRow()
的代码。
我的猜测是你正在传递一个数组 - 可能是连续的所有单元格 - 但这是你可以检查的方式。
将此行添加为函数的第一行:
Logger.log("rowToFormat = " + JSON.stringify(rowToFormat));
...然后运行,出现错误。检查日志 - 您希望看到您收到一个简单的字符串。如果您正在获取阵列,那么您就知道需要修复的内容。 (也许你想要得到阵列!)