Я понимаю, что что-то вроде
var a = "hello";
a += " world";
Это относительно медленно, поскольку браузер делает это в O(n). Есть ли более быстрый способ сделать это без установки новых библиотек?
Я понимаю, что что-то вроде
var a = "hello";
a += " world";
Это относительно медленно, поскольку браузер делает это в O(n). Есть ли более быстрый способ сделать это без установки новых библиотек?
Это самый быстрый способ объединить строки в javascript.
Подробнее см.
Почему конкатенация строк быстрее, чем объединение массива?
JavaScript: как объединить/объединить два массива для объединения в один массив?
Вопрос уже ответил, однако, когда я впервые увидел его, я подумал о NodeJS Buffer. Но это медленнее, чем +, поэтому, скорее всего, ничего не может быть быстрее, чем + в консетнации строк.
Протестировано следующим кодом:
function a(){
    var s = "hello";
    var p = "world";
    s = s + p;
    return s;
}
function b(){
    var s = new Buffer("hello");
    var p = new Buffer("world");
    s = Buffer.concat([s,p]);
    return s;
}
var times = 100000;
var t1 = new Date();
for( var i = 0; i < times; i++){
    a();
}
var t2 = new Date();
console.log("Normal took: " + (t2-t1) + " ms.");
for ( var i = 0; i < times; i++){
    b();
}
var t3 = new Date();
console.log("Buffer took: " + (t3-t2) + " ms.");
Выход:
Normal took: 4 ms.
Buffer took: 458 ms.
		В JavaScript нет никакого другого способа конкатенации строк. 
Теоретически вы можете использовать .concat(), но  путь медленнее, чем просто +
Библиотеки чаще, чем не более медленные, чем родной JavaScript, особенно для основных операций, таких как конкатенация строк или числовые операции.
Проще говоря: + является самым быстрым.
Ты спросил о производительности. Смотрите perf test, сравнивая "concat", "+" и "join" - короче + оператор выигрывает далеко.