异步请求在 for循环执行完成只能拿到最后一条的数据 所以在for循环里面请求服务只能用同步,但是万一数据上百条 那不是要上百条同步的请求 这样太慢了 我就在想js有没有一次多条并发请求的办法?
楼主的意思是 for循环结束后 只需要拿到 ajax请求的最后一条请求的数据,ajax里面就可以设置异步 ,然后只取最后一个ajax请求的callback就好了啊
方法太多了;如果写Callback,可以用forEach加Counter裸写,可以用Caolan的async;用Promise,有Promise.all,用Bluebird的Promise,有Promise.map;非要用for,还有async/await可用,但这个实际上是串行的,只是解决了代码难看的问题;
在循环里面加一层闭包
能不能贴段代码出来看看,现在改了问题还是有点模棱两可。
你这种for循环的写法,就是并发的,反而你说的同步请求,需要在请求的回调里发送下一次请求