我在5000行中有一个大字符串除以 \ n 以为 textarea 在这里我想将这个大字符串转换为数组。
我的字符串就像这样
query= '1\n2\n3\n4\n5\n6\n6...........';
所以我转换为:
var array = query.split('\n');
console.log(array);
但它已经在浏览器上显示30秒后冻结浏览器。
在字符串中转换后,我通过POST逐个发送数据到服务器,验证后我逐个显示结果。
因此,如果有人知道更好的方法,那么请告诉我,否则会帮助我阻止浏览器冻结。
演示链接但不起作用,你可以看到我的html和js代码
答案 0 :(得分:2)
分为5000行只需不到一秒钟,至少在Chrome上:Fiddle
然而,除非你喜欢充斥服务器,否则在每个人中使用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();
....
})
});