String concatenation is when you have two or more strings and add them together. Like below:
var my_string = "H" + "e" + "l" + "l" + "o" + "!";
Another way to do this will be using individual statements such as below:
var my_string = 'H'; my_string += 'e'; my_string += 'l'; my_string += 'l'; my_string += 'o'; my_string += '!';
So an array join would
var arr = ['H', 'e', 'l', 'l', 'o', '!']; var foo = arr.join('');
Although in other languages array joining might be quick due to how new browsers handle concatenation array joins are slower.
Google’s V8 engine handles concatenations in a special way. It has a special string-builder library in runtime/string-builder.h (https://code.google.com/p/v8/source/browse/trunk).
StringBuilderConcat creates an array with a pre-defined length. The C++ code is really optimized.
Firefox, Opera and IE has also optimized the string concatenation. It is such that any join for an array with unknown length will always be slower than concatenation.
Testing will show concatenation with all new browses are %20 faster than join. Which is kind of awesome.