如何访问存储在数组中的结构中的数据

NoS*_*you 2 coldfusion coldfusion-10

我有一个数组,其中包含一个表示网页表单字段的结构.我的问题是如何轻松访问数组中的数据以获取我正在寻找的值.在这种情况下,我试图获取名称为"availableScreensCSV"的字段的值,现在我正在循环通过数组,如果key ="name"并且是"availableScreensCSV",那么我得到值的数据.我希望有一种更简单的方法.下面是我的数组/结构的样子

array

1   struct 
    NAME    templateId
    TYPE    hidden
    VALUE   [empty string]

2   struct
    NAME    useTestSystem
    TYPE    hidden
    VALUE   false

3   struct
    NAME    availableScreensCSV
    TYPE    hidden
    VALUE   ICASR,ICADM,ICTQ1,ICTQA,ICTQB,ICTQ6,ICFGB

4   struct
    NAME    ccna
    TYPE    hidden
    VALUE   IFX

5   struct
    NAME    pon
    TYPE    hidden
    VALUE   I11192014013

6   struct
    NAME    asr
    TYPE    hidden
    VALUE   1432310020

7   struct
    NAME    icsc
    TYPE    hidden
    VALUE   SW80
Run Code Online (Sandbox Code Playgroud)

Ada*_*tle 6

我的直觉反应是,"你的数据是如何进入该阵列的?" 如果它是一个表单帖子,您应该能够简单地按名称获取表单字段:form.availableScreensCSV- 但这取决于您的表单帖子.

由于你忽略了提及,我假设数组可能并不总是处于相同的顺序,在这种情况下,循环是你唯一合理的选择.有一些功能方法,比如arrayFind内联函数,但这是循环之上的一些语法糖.如果您只是在寻找更清晰,更易读的代码,那么带有内联函数的arrayFind可能就是您的选择.

如果您正在寻找性能最佳的选项,那么<cfbreak />一旦找到所需元素就会执行一个简单的循环将是最佳选择.