On Friday, August 16, 2002, at 12:25 , Douglas Brown wrote: > <cfset myString = ""> > <cfloop from="1" to="1000" index="i"> > <cfif myString EQ ""> > Hello > </cfif> > </cfloop> > Execution Time > > 811 milliseconds > Compared to > <cfset myString = "1"><cfloop from="1" to="1000" index="i"><cfif > len(myString)>Hello</cfif></cfloop> > Execution Time 370 milliseconds
First off, doing output kinda skews the results. I changed your code - see below - to just do a string assignment in the if in the loop and timed it on CFMX with loop set to 10000 instead of 1000: Execution Time 224 milliseconds Compared to Execution Time 192 milliseconds Execution Time 187 milliseconds Compared to Execution Time 194 milliseconds Execution Time 182 milliseconds Compared to Execution Time 177 milliseconds Execution Time 199 milliseconds Compared to Execution Time 189 milliseconds Execution Time 190 milliseconds Compared to Execution Time 182 milliseconds Execution Time 188 milliseconds Compared to Execution Time 204 milliseconds Execution Time 189 milliseconds Compared to Execution Time 200 milliseconds Execution Time 186 milliseconds Compared to Execution Time 193 milliseconds Execution Time 187 milliseconds Compared to Execution Time 184 milliseconds Execution Time 186 milliseconds Compared to Execution Time 181 milliseconds A negligible difference between the two comparisons... Here's the modified code: <cfset k = getTickCount()/> <cfset myString = ""> <cfloop from="1" to="10000" index="i"> <cfif myString EQ ""> <cfset q = "Hello"/> </cfif> </cfloop><br/>Execution Time #getTickCount()-k# milliseconds<br/> Compared to <cfset k = getTickCount()/> <cfset myString = "1"> <cfloop from="1" to="10000" index="i"> <cfif len(myString)> <cfset q = "Hello"/> </cfif> </cfloop> Execution Time #getTickCount()-k# milliseconds Now, given there is almost no difference between the times, what is the justification for preferring the more cryptic code over the simpler code? I also tried it with the apparently more common len(trim(myString)) and got almost identical results (with the loop limit set to 100000 this time) : Execution Time 1984 milliseconds Compared to Execution Time 1938 milliseconds Execution Time 1970 milliseconds Compared to Execution Time 1884 milliseconds Execution Time 1930 milliseconds Compared to Execution Time 1949 milliseconds Execution Time 1934 milliseconds Compared to Execution Time 1869 milliseconds Execution Time 1894 milliseconds Compared to Execution Time 1858 milliseconds Execution Time 2014 milliseconds Compared to Execution Time 1843 milliseconds Execution Time 1891 milliseconds Compared to Execution Time 1849 milliseconds Execution Time 1909 milliseconds Compared to Execution Time 1859 milliseconds Execution Time 1899 milliseconds Compared to Execution Time 1856 milliseconds Execution Time 1928 milliseconds Compared to Execution Time 1847 milliseconds Sean A Corfield -- http://www.corfield.org/blog/ "If you're not annoying somebody, you're not really alive." -- Margaret Atwood ______________________________________________________________________ Structure your ColdFusion code with Fusebox. Get the official book at http://www.fusionauthority.com/bkinfo.cfm FAQ: http://www.thenetprofits.co.uk/coldfusion/faq Archives: http://www.mail-archive.com/[email protected]/ Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists

