遍历嵌套在结构中的数组

Looping over an array nested within a structure

这是 API 返回的一些数据。我需要遍历嵌套结构中包含的数组。例如,在下图中的 savedMajorIds:

isArray(apiprofile.result.savedMajorIds)

returns 是的,所以我很确定它正在寻找正确的东西。但是,当我尝试遍历它以获取它中断的值时。代码是:

for (i=1, i < arrayLen(apiprofile.result.savedMajorIds),i=i+1) {
        writeOutput(apiprofile.result.savedMajorIds[i]);
    }

错误日志不喜欢 arrayLen() 部分,但到目前为止我无法让它工作。

对于任何偶然发现此问题的人:

(i=1, i < arrayLen(apiprofile.result.savedMajorIds),i=i+1)

需要

(i=1; i < arrayLen(apiprofile.result.savedMajorIds); i=i+1)

(i=1; i < arrayLen(apiprofile.result.savedMajorIds); i++)

这里有几个选项,具体取决于您的 ColdFusion 版本。

if (isArray(apiprofile.result.savedMajorIDs)) {
    // For/In Loop on Array - Possibly CF9, Definitely CF10+ (Verify version) 
    // Note: x will leak unless var'ed inside function.
    for ( x IN apiprofile.result.savedMajorIDs ) {
        writeoutput( x & "<br>" ) ;
    }

    // ArrayEach - CF10+ > Note: y will not leak.
    ArrayEach(apiprofile.result.savedMajorIDs, function(y){writeoutput(y & "<br>");}) ;

    // Member Function .each() - CF11+  > Note: z will not leak.
    apiprofile.result.savedMajorIDs.each( function(z){writeoutput(z & "<br>");}) ;
}

https://trycf.com/gist/f6f3e64635e4b72da15521a3d49d485f/acf11?theme=monokai