coldfusion - 点和方括号表示法在 CF 中的行为不应该相同吗?

标签 coldfusion coldfusion-10 railo cfml

使用此代码:

<cfset foo = {}>
<cfset exists1 = !isDefined("foo.foo")>
<cfset exists2 = isNull(foo.foo)>
<cfset exists3 = isNull(foo['foo'])>

Railo 通过 ok (all True) 而 CF 在最后一行抛出异常。

coldfusion.runtime.UndefinedElementException: Element foo is undefined in a CFML structure referenced as part of an expression.



我一直认为 CFML 中的点符号和方括号符号在功能上应该是等效的,而不仅仅是方括号可以定义区分大小写的键。

A bug I reported here最近被标记为“NotABug”。

有人可以解释为什么吗?

最佳答案

我已经对错误添加了评论。基本上 Adob​​e 将其关闭为“不是错误”的原因是因为他们对它进行分类的工程师是一个木偶。这绝对是一个错误。

这是因为您的代码无法正常工作的错误。

关于coldfusion - 点和方括号表示法在 CF 中的行为不应该相同吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25304785/

相关文章:

.htaccess 重写 Tomcat 服务器

php - 从服务器到服务器的持久登录信息

ColdFusion 文件夹权限变为只读

multithreading - ColdFusion 动态线程名称

datetime - 将随机时间添加到 DateTime 值

hash - 使用 SHA-1 的 Coldfusion 哈希与 Php sha1

tomcat - 我可以在 Railo 上托管标准 war 应用程序吗

PHP ColdFusion9 AES 加密 - 不同的结果

ColdFusion Verity 搜索在可搜索字段中被 "&"混淆

mysql - 考虑到与其关联的项目数量,如何使列跨越一行