<cfif>值是否在没有循环的数组中?

时间:2017-07-07 12:37:22

标签: coldfusion

这看起来应该是一个简单的问题,但是当谈到数组时,CF似乎有不同的方法来完成同样的事情,所以我想确保我以最好的方式做到这一点;

我有一个简单的cfoutput;

<cfoutput query="getusers">
Username: #username# ID:#fnid#
</cfoutput>

我也在页面的其他地方使用cfwebsocket,'fnid'(这是一个session.auth变量)的值是订阅的一部分。 wsGetSubscribers的转储给了我以下内容;

enter image description here

我想要做的是在'getusers'查询输出期间,检查subscriberinfo.fndid下的FNID是否存在 - 目标是添加一个注释,表示用户在该点订阅

我知道我可以使用cfloop做到这一点,但这看起来很长!

1 个答案:

答案 0 :(得分:1)

  

我想避免的是必须在cfoutput查询中使用cfloop(在数组上)

所以你想要{this.props.match.params.id}进行一次查找?怎么样:

fnId

CF10 +也有arrayEach(),如果你喜欢<cfset subscribersById = StructNew()> <cfloop array="#wsGetSubscribers()#" index="subsciption"> <cfset subscribersById[subsciption.subscriberInfo.fnId] = subsciption> </cfloop> <cfoutput query="getusers"> Username: #username# ID: #fnid# Subscribed: #StructKeyExists(subscribersById, fnid)# </cfoutput> 上的这种语法。