coldfusion - lucee 5.x ListEach 似乎无法访问本地 var 范围?

标签 coldfusion lucee

我似乎无法访问 local我的 ListEach 中的范围:

writeDump(local.woCoreID); // outputs expected values
//  LOOP OVER LIST AND SEPARATE TEXT FROM INTEGERS
ListEach(local.__userSuppliedWorkoutTagList, function (item) {
    writeDump(item) //  outputs expected values
    writeDump(local.woCoreID); // key [woCoreID] doesn't exist
});

当我尝试访问 local.woCoreID 时,我收到一条错误消息,key [woCoreID] doesn't exist .为什么当我可以在 ListEach 之前转储它并且我看到值在那里时。我在这里缺少什么?

我正在使用 Lucee 5.x

最佳答案

每个function有自己的local范围。如果你想要外部作用域,你必须引用它:

var outerLocal = local;

ListEach(local.__userSuppliedWorkoutTagList, function (item) {
    writeDump(item);
    writeDump(outerLocal.woCoreID);
});

或使用常规的、计数的 for循环而不是 ListEach() + function .

关于coldfusion - lucee 5.x ListEach 似乎无法访问本地 var 范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52397480/

相关文章:

coldfusion - 我应该将 DSN(数据源)定义放在 onApplicationStart() 函数内部还是外部?

rest - 响应在开始时给出//斜线 - Taffy - ColdFusion

coldfusion - 我应该把 Jar 文件放在 Lucee 的哪里?

java - lucee中如何导入java.security.KeyStore.PasswordProtection

encoding - 使用 EncodeForHTML 时的 Coldfusion/Lucee 编码问题

pdf - 图像未显示在冷融合 10 的 cfdocument pdf 中

coldfusion - 是否应该使用 CFHTTP 进行本地服务器调用?

coldfusion - ColdFusion 中的错误处理 LT

coldfusion - cfdocument PDF 显示印地语语言字符串为空

java - OSX El Cap、Apache2、Tomcat 8、Lucee 5