coldfusion - 为什么 writedump 函数不需要在 cfscript 中使用分号?

标签 coldfusion coldfusion-9

通常,CFSCRIPT 标记中编写的所有语句都必须以半色 (;) 结尾,但今天我正在处理示例代码,我忘记在 writedump() 函数之后编写分号 (;),但代码仍然执行良好。下面是示例代码,这可以很好地工作;在声明的末尾。只是好奇为什么 writeDump 可以在没有分号的情况下工作。

我正在使用 Coldfusion 版本 9,0,1,274733。

<cfscript>
a = "Hello";
b = "World";
concat(a,b);
writeDump(a & b)
writeOutput(a);
</cfscript>


<cffunction name="concat" access="public" output="false" returntype="string">
<cfargument name="str1" required="true" type="string" />
<cfargument name="str2" required="true" type="string" />
<cfreturn str1 & str2>
</cffunction> 

最佳答案

我猜 Adob​​e 开发人员可能忘记将这个相当无用的约定应用于 CFScript 解析器...因为它看起来像一个错误(它是 already filed ,顺便说一句),真的。你甚至可以写这样的东西,它会起作用:

writeDump(variables)writeDump(a & b) 

此函数的隐式分号。

值得一提的是,Railo 更进一步,当在线出现单个语句时,所有分号都是可选的,所以这会很好地工作:

<cfscript>
    a = "Hello"
    b = "World"
    concat(a,b)
    writeDump(a & b)
    writeOutput(a)
</cfscript>

关于coldfusion - 为什么 writedump 函数不需要在 cfscript 中使用分号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6606208/

相关文章:

iis - 重定向到 404 是有效的,但在 chrome devtools 中,显示了 200 代码

java - ColdFusion 到 JSP 的转换

coldfusion - Coldfusion 的 createObject() 函数如何搜索组件?

jquery - 使用 this.securejson = true;

json - ColdFusion 解析 JSON

session - ColdFusion session 范围对应用程序是否持久?

java - 如何解决 ColdFusion 9 中的死锁问题 : coldfusion. util.AbstractCache$Lock

ColdFusion:从 cfloop 获取变量字符串值

orm - Coldfusion 9 ORM 映射问题

java - 将 java-ee WAR 部署到 ColdFusion 服务器(对于混合 Java - ColdFusion 应用程序)