Кто-нибудь может мне объяснить это:
http://jsperf.com/string-concatenation-1/2
Если вы ленивы, я тестировал A) против B):
A)
var innerHTML = "";
items.forEach(function(item) {
innerHTML += item;
});
B)
var innerHTML = items.join("");
Где items
для обоих тестов - это один и тот же массив строк из 500 элементов, причем каждая строка является случайной и имеет длину от 100 до 400 символов.
A) оказывается в 10 раз быстрее. Как это может быть - я всегда думал, что объединение с использованием join ("")
было уловкой оптимизации. Есть ли какие-то ошибки в моих тестах?