按顺序获取异步数据,可以用递归的方式
异步函数不应该用直接循环,不然项目的执行顺序是不确定的。 应该用递归:
var arr = ["a","b","c"];
(function loop(index) {
setTimeout(function(){//用setTimeout模拟异步函数
console.log(arr[index]);
if (++index<arr.length) {
loop(index); } else {
console.log("全部执行完毕");
} }, 500)
})(0);
后记:用递归可以,也可以用promise