Google表格Javascript indexOf错误

问题描述 投票:0回答:1

在没有索引标准的单元格上使用indexOf()时,我有一个疯狂的时间试图绕过错误..在这种情况下是一个逗号:indexOf(“,”)。顺便说一句,我在尝试在没有逗号的单元格上执行.split(“,”)时会遇到同样的问题。

有没有办法绕过这个,所以如果没有逗号,我可以给变量一个值?

这是代码:

/**
@customfunction
*/
function INDEX_TEST(input){
    var a = 0;
    if (input.indexOf(",") > -1){
      a = 999;
    }
    else {
      a = 0;
    }
    return a;
}

任何帮助,将不胜感激。

这是谷歌表的链接

Google Sheet with example

javascript google-apps-script error-handling indexof
1个回答
1
投票

input是一个不是字符串的数字时,您会收到错误。数字没有indexOf或任何其他字符串方法。所以你必须将它转换为字符串:

if (input.toString().indexOf(",")>-1){a = 999;}

要么

if ((input + '').indexOf(",")>-1){a = 999;}
© www.soinside.com 2019 - 2024. All rights reserved.