gpt4 book ai didi

coldfusion - 数组/列表上的 cfloop 不允许引用以前的值

转载 作者:行者123 更新时间:2023-12-04 17:18:35 24 4
gpt4 key购买 nike

我经常对数组或列表使用 cfloop,因为我有涉及数组值的复杂计算。但是,似乎没有办法返回到数组/列表的特定成员。如果我使用普通循环,我可以很容易地做到这一点:

<cfloop from = "1" to = "#ArrayLen(myarray)#" index = "i">
<cfset temp = "myarray[i]">
<cfif mystruct[temp] GT 5>
... do something
</cfif>
<cfif myarray[i] NEQ myarray[i-1]>
...do something
</cfif>
</cfloop>

但是当我必须用“i”而不是 i 处的值来引用它们时,涉及 myarray[i] 的计算可能会很麻烦。

但是如果我在数组上使用循环,我通常必须添加一个计数器:

<cfset m = 0>
<cfloop array = #myarray# index = "value">
<cfset m = m + 1>
<cfif mystruct[value] GT 5>
... do something
</cfif>
<cfif myarray[i] NEQ myarray[i-1]>
...do something
</cfif>
</cfloop>

有人知道如何在 cfloop array = myarray 编码中引用 myarray[i-1] 吗?在对此进行研究时,我发现了这个咆哮:http://www.markdrew.co.uk/blog/post.cfm/cfloop-rant , 但它没有提供任何解决方案。

最佳答案

以评论的形式开始,但很快就变得太长了。正如您提到的,我通常使用计数器。我认为 ColdFusion 没有内置的方式来为您处理这个问题。如果你只是担心比较当前值和以前的值,我以前做过这样的事情:

<cfset previousValue = "">
<cfloop array = #myarray# index = "value">
<cfif mystruct[value] GT 5>
<!--- do something --->
</cfif>
<cfif value NEQ previousValue>
<!--- do something --->
</cfif>
<cfset previousValue = value>
</cfloop>

关于coldfusion - 数组/列表上的 cfloop 不允许引用以前的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17093380/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com