array join vs string connect (v36)

Revision 36 of this benchmark created on


Preparation HTML

<script>
  var alphabet = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z";
  var alphatmp = [];
  
  for(i=0;i<200;i++)
      alphatmp.push(alphabet);
  
  var str_to_split = alphatmp.join(',');
  var myarray = str_to_split.split(',');
  
</script>

Test runner

Ready to run.

Testing in
TestOps/sec
array join
var tmp = [];
for (i=0;i<myarray.length;i++){
  tmp.push(myarray[i]);
}

var output = tmp.join('');
ready
string connect
var output = '';
for (i=0;i<myarray.length;i++){
output += myarray[i];
}
 
ready
string-multi concat
var output = '';
for (i=0;i<myarray.length;i += 4){
output += myarray[i] + myarray[i+1] + myarray[i+2] + myarray[i+3];
}
ready
string-multi concat 2
var output = '';
for (i=0;i<myarray.length;i += 4){
  output += myarray[i] ;
  output += myarray[i+1] ;
  output += myarray[i+2] ;
  output += myarray[i+3] ;
}
ready
string-multi concat 3
var output = '';
for (i=0;i<myarray.length;i += 10){
  output += myarray[i] ;
  output += myarray[i+1] ;
  output += myarray[i+2] ;
  output += myarray[i+3] ;
  output += myarray[i+4] ;
  output += myarray[i+5] ;
  output += myarray[i+6] ;
  output += myarray[i+7] ;
  output += myarray[i+8] ;
  output += myarray[i+9] ;
}
ready
array join nocopy
var output = myarray.join('');
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.