使用 CFML 和 CF9 时,我通常 var scope 我的循环变量;在这种情况下local.i
,例如:
<cfloop list="#this.list#" index="local.i">
<cfif Len(local.i) GT 10>
// do something
</cfif>
</cfloop>
我最近开始将一些东西转换成 CFScript,并且(令我失望的是,我发现没有办法在 CFScript 中循环列表)我想知道我是否应该仍然 var 作用域我的循环变量,以及如何:
for (i = 1; LTE ListLen(this.list); i = i + 1 ) {
if (Len(ListGetAt(this.list, i) GT 10)) {
// do something
}
}
我应该这样做local.i = 1
而local.i = local.i + 1
不是我的示例中的示例代码吗?有必要吗?
编辑:我还应该问一下我的 CFML 循环的 CFScript 形式是否正确;我问是因为我刚刚注意到我的 CFML 循环使用,
(逗号和空格)作为delimiter
参数,这在循环的 CFScript 版本中似乎不存在。