JS挂起了一个do while循环

Sir*_*Sir 1 javascript

我想知道如何用JS解决挂页.

我有一个JS循环,我正在测试这样,但它似乎永远挂起 - 有没有办法阻止它挂起,同时仍然完成脚本?:

<div id="my_data"></div>

<script>
function test(value){
output= [];
do{ 
    value++;
    output.push(value);
    document.getElementById('my_data').innerHTML = (output.join(''));
}while(value < 10000000);
alert('end'); // never occurs
}

test(0);
</script>
Run Code Online (Sandbox Code Playgroud)

Poi*_*nty 7

你用越来越长的字符串更新DOM一千万次.

如果你是未来的某种超级存在,那么也许这是有道理的.


zia*_*aab 5

Javascript是单线程的,因此在运行循环时不会发生任何其他事情.它运行了一千万次,并且在每次运行时都将#my_data的innerHTML设置为新的.这是非常低效的,似乎没用.你想达到什么目的?


归档时间:

查看次数:

2167 次

最近记录:

7 年,5 月 前