Is
for (var i=0, cols=columns.length; i
more efficient than
for (var i=0; i
Yes, it is. Accessing the length property wastes un-needed time (unless the array's length can change during iteration.).
Here is how I loop through arrays: http://gist.github.com/339735