Hen*_*nry 4 coldfusion performance
我不明白,为什么使用listFindNoCase()和ListFind()进行一系列OR和IS/EQ比较的首选方式?JVM是否能够优化它并生成有效的代码,而不是进行必须处理字符串标记的函数调用?或者CF做的事情效率低得多?
使用
listFindNoCase()或listFind()代替is和or运算符将一个项目与多个项目进行比较.它们要快得多.
http://www.adobe.com/devnet/coldfusion/articles/coldfusion_performance.html
Pau*_*gny 11
答案很简单:类型转换.你可以比较2 EQ"2"或now()EQ"2011-01-01",或真正的EQ"YES".转换(到多种类型)和比较的成本非常高.
ListFind()不需要尝试多次转换,因此速度更快.
这是动态打字的代价.