Javascript分割冻结浏览器

Javascript分割冻结浏览器,javascript,Javascript,我有一个5000行的大字符串,除以\n思想文本区域 这里我想把这个大字符串转换成数组 我的绳子是这样的 query= '1\n2\n3\n4\n5\n6\n6...........'; 因此,我转换为: var array = query.split('\n'); console.log(array); 但在它显示在控制台上之后,它会将浏览器冻结30秒 在转换成字符串后,我通过POST将数据一个一个地发送到服务器,在验证之后,我将一个一个地显示结果 所以,如果有人知道它更好的方法,那么告诉我

我有一个5000行的大字符串,除以\n思想文本区域 这里我想把这个大字符串转换成数组

我的绳子是这样的

query= '1\n2\n3\n4\n5\n6\n6...........';
因此,我转换为:

var array = query.split('\n');
console.log(array);
但在它显示在控制台上之后,它会将浏览器冻结30秒

在转换成字符串后,我通过POST将数据一个一个地发送到服务器,在验证之后,我将一个一个地显示结果

所以,如果有人知道它更好的方法,那么告诉我其他方法可以帮助我防止浏览器冻结。

演示链接,但不工作,你可以看到我的html和js代码


拆分5000行不到一秒钟,至少在Chrome上是这样:

然而,在each中使用AJAX是一个非常糟糕的主意,除非您想让服务器泛滥

 $.each(array, function (index, value) {
    $.ajax({
取而代之的是

function sendIt() {
  if (array.length==0) return; // stop
  var value = array.pop();
  $.ajax({
    ...
    success: function() {
      ...
      send();
    }
    ...
  });
}

$(function() {
  $("#formID").on("submit",function(e) { // give the form an ID
    e.preventDefault(); // cancel submission

    ....

    sendIt();
    ....
  })
});

好的,现在我已经删除了,但仍然冻结,我使用5000作为第一个5000值。您能分享发送n处理响应的代码吗?这可能是您面临的问题的根源。在这种情况下,拆分不应花费30秒。在Chrome上这需要不到一秒的时间以便更好地理解,请提供一个工作演示(代码片段,JSFIDLE…)我有JSFIDLE演示,它不工作,但你们都可以看到codecan。请提供示例pop,因为我已经尝试了很多次,但没有成功。什么pop?请详细说明