Оптимизация конкатенации большого количества строк — работает ли?

Набрёл в поисках методов оптимизации скорости работы JS сайта на такой метод:

// Пример 1 - использование конкатенации
var str = "Вычисленная площадь равна " + sq + "м2, а объем соответственно " + v + "м3";

// Пример 2 - использование функции join().
var str2 = ["Вычисленная площадь равна " , sq , "м2, а объем соответственно " , v , "м3"].join("");


Это действительно дает значительный прирост производительности при использовании join? Или это спичечная оптимизация?
  • Вопрос задан
  • 3218 просмотров
Решения вопроса 1
avalak
@avalak
Неужели так сложно протестировать? (вывод в консоли).

// Конкатенация 100000 случайных строк test1: 36ms // + test2: 119ms // join
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Nomad1
@Nomad1
Всегда используйте более читабельный вариант, кроме случаев, критичных по производительности — это залог успешного рефакторинга и поддержки. В ответах выше видно, что сложение 100000 строк занимает меньше 200мс, это порядка 0.002 мс на строку. Если складывается 5 строк, как в оригинальном примере, то разница в двух подходах не будет заметна ни наблюдателю, ни профайлеру, даже если скорость упадет до 1мс на строку.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Eyeconweb Екатеринбург
от 90 000 ₽
NWCode Санкт-Петербург
от 150 000 до 250 000 ₽