Google App Script 新编辑器 - 字符串 属性 双下划线
Google App Script new editor - string property double underlined
可能是个 nube 问题,但我有一行代码:
var c = message.substring(i, i + 1);
它有效,但在新的 Google App Script 编辑器中,字符串 属性 "substring" 下面有一个双下划线,这似乎表明它是错误的,但它确实有效!
“Show Fixes”只给了我两个选择——忽略“错误”或禁用检查,这两个似乎都不是我想要做的。有什么想法吗?
我认为这是由于变量“message”的定义方式所致。我做了一个快速测试,试图复制您的场景,这就是我得到的结果:
有警告:
var message = 0
message = '123456789'
var c = message.substr(1, 5);
没有警告:
var message = '0'
message = '123456789'
var c = message.substr(1, 5);
两种情况结果相同,没有错误。如果您提供更多代码,我可以检查出现警告的原因。
编辑:
正如您在评论中所说,您的变量是使用 getValue()
从 SpreadSheet
的 range
定义的,此方法 returns 具有cell
的值。如果你想获得一个字符串,你应该使用 getDisplayValue()
。您还可以使用内置方法 toString()
来确保将任何变量转换为字符串。
参考文献:
可能是个 nube 问题,但我有一行代码:
var c = message.substring(i, i + 1);
它有效,但在新的 Google App Script 编辑器中,字符串 属性 "substring" 下面有一个双下划线,这似乎表明它是错误的,但它确实有效!
“Show Fixes”只给了我两个选择——忽略“错误”或禁用检查,这两个似乎都不是我想要做的。有什么想法吗?
我认为这是由于变量“message”的定义方式所致。我做了一个快速测试,试图复制您的场景,这就是我得到的结果:
有警告:
var message = 0
message = '123456789'
var c = message.substr(1, 5);
没有警告:
var message = '0'
message = '123456789'
var c = message.substr(1, 5);
两种情况结果相同,没有错误。如果您提供更多代码,我可以检查出现警告的原因。
编辑:
正如您在评论中所说,您的变量是使用 getValue()
从 SpreadSheet
的 range
定义的,此方法 returns 具有cell
的值。如果你想获得一个字符串,你应该使用 getDisplayValue()
。您还可以使用内置方法 toString()
来确保将任何变量转换为字符串。
参考文献: