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

时间:2014-11-25 00:15:44

标签: coldfusion coldfusion-10

我有一个数组,其中包含一个表示网页表单字段的结构。我的问题是如何轻松访问数组中的数据以获取我正在寻找的值。在这种情况下,我试图获得名称为" availableScreensCSV"的字段的值。现在我通过数组循环,如果键="名称'并且是" 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

1 个答案:

答案 0 :(得分:6)

我的直觉反应是,“您的数据是如何进入该阵列的?”如果是表单帖子,您应该只需按名称获取表单字段:form.availableScreensCSV - 但这取决于您的表单帖子。

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

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