首页 > 解决方案 > Google App Script 新编辑器 - 字符串属性双下划线

问题描述

可能是一个 nube 问题,但我有一行代码:

var c = message.substring(i, i + 1);

它可以工作,但在新的 Google App 脚本编辑器中,字符串属性“substring”下面有一个双下划线,这似乎表明它是错误的,但它确实有效!

“显示修复”只给了我两个选项——忽略“错误”或禁用检查,这两个选项似乎都不是我想要做的。有任何想法吗?

标签: javascriptgoogle-apps-scriptide

解决方案


我认为这是由于变量“消息”是如何定义的。我做了一个快速测试,试图复制你的场景,这就是我得到的:

带有警告:

var message = 0
message = '123456789'
var c = message.substr(1, 5);

没有警告:

var message = '0'
message = '123456789'
var c = message.substr(1, 5);

两种情况的结果相同,没有错误。如果您提供更多代码,我可以检查出现警告的原因。

编辑:

正如您在评论中所说,您的变量是从using定义range的,此方法返回一个值为 的对象。如果你想获得一个字符串,你应该使用. 您还可以使用内置方法来确保将任何变量转换为字符串。SpreadSheetgetValue()cellgetDisplayValue()toString()

参考:


推荐阅读