Oda*_*lim 0 google-sheets google-apps-script
我正在尝试在 Google Apps 脚本中编写一个非常基本的 For 循环,它确实应该运行得很快。但是,当我执行它时,需要很长时间才能运行,直到出现运行时间太长的错误(错误:超出最大执行时间)。
代码是:
function myFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var Sheet = ss.getActiveSheet();
var LR = Sheet.getLastRow()
for(var i=1;i=10;i++)
{
Logger.log(i);
}
}
Run Code Online (Sandbox Code Playgroud)
难道我做错了什么?还是我的 Google Apps 脚本搞砸了?
你的循环永远不会结束。
在您的脚本中,i=10offor(var i=1; i=10; i++)必须是condition。但i=10它是10替代i. 因此,何时for(var i=1; i=10; i++)运行:
10替换i. i变成10.
10为i=10。1到i. i变成11.10替换i. i变成10.1到i. i变成11.10为i. i变成10.当你想从1循环到10时,修改成这样怎么样?
for (var i = 1; i <= 10; i++) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
另外,比如你想循环10次,修改成这样怎么样?
for (var i = 0; i < 10; i++) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
forJavascript语句的文档描述如下:
for 循环会重复执行,直到指定条件的计算结果为 false。JavaScript 的 for 循环与 Java 和 C 的 for 循环类似。for 语句如下所示:
Run Code Online (Sandbox Code Playgroud)for ([initialExpression]; [condition]; [incrementExpression]) statement当执行 for 循环时,会发生以下情况:
- 执行初始化表达式initialExpression(如果有)。该表达式通常会初始化一个或多个循环计数器,但语法允许使用任何复杂程度的表达式。该表达式还可以声明变量。
- 条件表达式被求值。如果条件的值为 true,则执行循环语句。如果条件的值为假,则 for 循环终止。如果完全省略条件表达式,则假定条件为真。
- 语句执行。要执行多个语句,请使用块语句 ({ ... }) 对这些语句进行分组。如果存在,则执行更新表达式incrementExpression。控制返回到步骤 2。
| 归档时间: |
|
| 查看次数: |
2863 次 |
| 最近记录: |