Google apps script 在for循环中递增值时出现问题
我正在尝试使单元格引用动态。这意味着它必须包含一个向上计数的变量。然而,当我尝试递增计数器时,“新”数字只是添加到旧数字的后面 我用其他语言做过一些基本的编程,所以我知道for循环的语法以及如何增加计数器。但它似乎并不像我在AppScript中希望的那样工作Google apps script 在for循环中递增值时出现问题,google-apps-script,Google Apps Script,我正在尝试使单元格引用动态。这意味着它必须包含一个向上计数的变量。然而,当我尝试递增计数器时,“新”数字只是添加到旧数字的后面 我用其他语言做过一些基本的编程,所以我知道for循环的语法以及如何增加计数器。但它似乎并不像我在AppScript中希望的那样工作 function myFunction() { var counter = ["hello", "Bye"];; for (var i in counter) { Logger.log("Increment: " +N
function myFunction() {
var counter = ["hello", "Bye"];;
for (var i in counter)
{
Logger.log("Increment: " +Number(i+1));
}
}
这给了我以下结果:
增量:1
增薪:11
我的预期结果是:
增量:1
增量:2
var mailList = sheet.getRange("C"+(i+1)).getValue();
第二个例子来自我的代码,以及我希望它如何工作。
此行应生成一个变量,该变量获取列c中当前单元格的值,加上索引1,因为变量“i”开始从第2行获取值。然后,它将此结果存储在一个变量中,我使用该变量来确定电子邮件的接收者,稍后在代码中。变量I不是一个数字,而是一个字符串,这导致了这种行为。"1" + "1" = "11".
变量i不是一个数字,而是一个字符串,这导致了这种行为。"1" + "1" = "11".
完美@Marc。只是出于好奇,为什么这个变量被设置为默认字符串。当我想对一个变量执行数学表达式时,我是否总是需要添加“parseInt”呢?@VegardSmith Johansen,因为谷歌的某位员工认为它应该这样工作。不,不总是,这取决于变量是什么。例如,您可以在不键入以下内容的情况下执行相同的操作:for(vari=0;i
var counter = ["hello", "Bye"];
for (var i in counter) {
Logger.log(parseInt(i)+1);
}