解决jQuery JS的for循环调用ajax异步问题
    		       		warning:
    		            这篇文章距离上次修改已过441天,其中的内容可能已经有所变动。
    		        
        		                
                
// 假设我们有一个数组,包含了需要发送的数据
var dataArray = [
    { id: 1, name: 'Alice' },
    { id: 2, name: 'Bob' },
    // ... 更多数据
];
 
// 使用jQuery发送AJAX请求的函数
function sendAjaxRequest(data, callback) {
    $.ajax({
        url: '/your/api/endpoint', // 替换为你的API端点
        type: 'POST',
        data: data,
        success: function(response) {
            callback(null, response);
        },
        error: function(error) {
            callback(error, null);
        }
    });
}
 
// 使用async.eachLimit来控制并发数量
// 需要安装async模块,可以通过npm install async来安装
var async = require('async');
 
async.eachLimit(dataArray, 5, function(item, callback) {
    sendAjaxRequest(item, callback);
}, function(err) {
    if (err) {
        console.error('An error occurred:', err);
    } else {
        console.log('All requests completed successfully.');
    }
});在这个代码示例中,我们使用了async.eachLimit函数来控制并发执行的AJAX请求数量,这样可以避免因大量并发请求而导致的问题。我们假设你已经安装了async模块,并在你的环境中可用。如果你的环境不支持async模块,你需要先通过npm安装它:npm install async。
评论已关闭