JavaScript和UI响应中的长时间运行循环
我有一个在“for”循环中处理巨大JSON数组的代码 问题在于Firefox浏览器。它显示一个警告对话框,说明脚本运行时间过长。下面的代码就是解决方案JavaScript和UI响应中的长时间运行循环,javascript,loops,firefox,recursion,browser,Javascript,Loops,Firefox,Recursion,Browser,我有一个在“for”循环中处理巨大JSON数组的代码 问题在于Firefox浏览器。它显示一个警告对话框,说明脚本运行时间过长。下面的代码就是解决方案 //not precise code example, but it's kind of. delay(arr, 0); function delay(arr, num) { //process array by parts with 50 elements in each part for(var i = 1; i <= 5
//not precise code example, but it's kind of.
delay(arr, 0);
function delay(arr, num) {
//process array by parts with 50 elements in each part
for(var i = 1; i <= 50; i++) {
//PROCESS arr[num];
num += i;
}
if(num < arr.length) {
setTimeout(function() { delay(arr, num); }, 100);
}
}
//不是精确的代码示例,但有点像。
延迟(arr,0);
功能延迟(arr,num){
//按部件处理阵列,每个部件中有50个元素
对于(var i=1;i如果您使用Firefox,您可能正在寻找,它允许您生成背景线程。如果您使用Firefox,您可能正在寻找,它允许您生成背景线程。如果您使用Firefox,您可能正在寻找,它允许您生成背景线程。如果您使用Firefox,您可能正在寻找,它允许您生成后台线程。我认为web工作者是您所需要的
在这里你可以找到一个很好的网络工作者介绍:我认为网络工作者正是你所需要的
在这里你可以找到一个很好的网络工作者介绍:我认为网络工作者正是你所需要的
在这里你可以找到一个很好的网络工作者介绍:我认为网络工作者正是你所需要的
在这里你可以找到一个很好的网络工作者介绍:我希望有一些跨浏览器的解决方案,因为其他浏览器也被冻结了,只是没有对话框。而且用户PC上的CPU负载当然是100%。正如我所能说的,网络工作者在Chrome、IE10+、Safari等浏览器中都得到了支持。请看这里:我希望这里有一些跨浏览器解决方案,因为其他浏览器也在冻结,只是没有对话框。用户PC上的CPU负载当然是100%。我可以告诉网络工作者,Chrome、IE10+、Safari等都支持浏览器。请看这里:我希望有一些跨浏览器解决方案,因为其他浏览器也在冻结嗯,没有对话框。用户PC上的CPU负载当然是100%。我能告诉你的是,Chrome、IE10+、Safari等都支持网络工作者。请看这里:我希望有一些跨浏览器的解决方案,因为其他浏览器也在冻结,没有对话框。用户PC上的CPU负载当然是100%.据我所知,Chrome、IE10+、Safari等都支持Web Workers。请参见此处:
//not precise code example, but it's kind of.
delay(arr, 0);
function delay(arr, num) {
//process array by parts with 50 elements in each part
for(var i = 1; i <= 50; i++) {
//PROCESS arr[num];
num += i;
}
if(num < arr.length) {
setTimeout(function() { delay(arr, num); }, 100);
}
}