异步时For和Map的区别
看代码
var videoList = [
{num:1},
{num:2},
{num:3}
];
for(var i in videoList){
setTimeout(function(){
console.log(videoList[i].num);
},2000)
}
videoList.map(function(item){
setTimeout(function(){
console.log(item.num);
},2000)
});
输出结果为:
For输出: 3 3 3
Map输出: 1 2 3
如果是循环数组,存在异步情况,并且需要利用callback来修改原数组 建议使用Map.