Вот один способ, основанный на идее Влада, который должен быть максимально быстрым:
var arrData = [];
for (var i = 0; i <= 5000; i++)
arrData.push(i);
var oDiv = document.getElementById("Output");
oDiv.innerHTML = arrData.join(", ");
Вместо добавления к строке или к innerHTML
, которые являются медленными, добавьте к массиву, затем используйте join
, чтобы вывести строку из массива. В приведенном выше примере будет выброшено 5000 чисел в выходной div, и это займет 2 миллисекунды вместо 2,5 секунд при выполнении с oDiv.innerHTML += i + ", ";
Живой тестовый кейс доступен здесь: http://jsfiddle.net/yahavbr/mKx35/