Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript块循环逻辑_Javascript_Node.js_Arrays_Logic - Fatal编程技术网

JavaScript块循环逻辑

JavaScript块循环逻辑,javascript,node.js,arrays,logic,Javascript,Node.js,Arrays,Logic,我的代码有一个包含许多对象的数组,这些对象是URL的,我用它们做了一个循环,在这个数组中运行,并对数组中的每个URL发出请求。但是我需要我的循环以块的形式通过数组,例如:每10个;在您到达终点之前,所有这些都是为了避免您立即执行操作,并最终导致服务器过载,同时也为了避免花费太长时间从1:1变为1,因为数组非常大,代码库基本上就是这样 const array = ["URL-1","URL-2","URL-3"] etc... for

我的代码有一个包含许多对象的数组,这些对象是URL的,我用它们做了一个循环,在这个数组中运行,并对数组中的每个URL发出请求。但是我需要我的循环以块的形式通过数组,例如:每10个;在您到达终点之前,所有这些都是为了避免您立即执行操作,并最终导致服务器过载,同时也为了避免花费太长时间从1:1变为1,因为数组非常大,代码库基本上就是这样

const array = ["URL-1","URL-2","URL-3"] etc...

for (var i = 0; i < array.length; i++) {
    axios.get(array[i], (res) => {
        const res = res;
    });
}
常量数组=[“URL-1”、“URL-2”、“URL-3”等。。。 对于(var i=0;i{ 常数res=res; }); }
有很多更好的方法,但通过使用setTimeOut选项,您可以尝试

let索引=0;
常量最大迭代次数=10;
函数checkURL(){
对于(var i=索引;i<索引+最大迭代次数;i++){
axios.get(数组[i],(res)=>{
常数res=res;
}
索引+=最大迭代次数;
if(索引>=array.length-maxIterations){
远红外线=真;
清除间隔(计时器);
}
}
常量计时器=设置间隔(检查URL,10000);

或者类似的事情,希望能有所帮助

您可以使用setTimeout?即使使用setTimeout,请求数量也太大,无法立即执行。如果您一次执行10次,并且超时时间介于两者之间,我可能会收到错误404。这是一个问题,我如何在10个数组中每隔10次发出请求?首先拆分数组?
array.splice
我想你可能不太理解我的问题,在你的例子中,他会对整个10倍数组发出请求,我真正想要的是,他只遍历我的数组一次,以10/10的块为单位。直到完成数组。这就是我的代码试图做的,每10秒它会在数组上迭代10项,直到当它到达终点时,他提出了10个请求,并关闭了它,而不是再提出10个请求。我需要查看您当前的实现,以便能够进一步提供帮助-我创建了一个新项目来测试您的示例