Javascript - jak uniknąć blokowania przeglądarki podczas wykonywania ciężkiej pracy?

Mam taką funkcję w moim skrypcie JS:

<code>function heavyWork(){
   for (i=0; i<300; i++){
        doSomethingHeavy(i);
   }
}
</code>

Może „doSomethingHeavy” jest ok, ale powtórzenie go 300 razy powoduje zablokowanie okna przeglądarki na czas niezauważalny. W Chrome nie jest to taki duży problem, ponieważ wykonywana jest tylko jedna karta; ale dla Firefoksa to kompletna katastrofa.

Czy jest jakiś sposób, aby poinformować przeglądarkę / JS, aby „zrobiła to łatwo” i nie blokowała wszystkich połączeń między wywołaniami doSomethingHeavy?

questionAnswers(8)

yourAnswerToTheQuestion