js-闭包处理变量取值问题

//由于downCount是异步函数,通过闭包避免了i变量取值问题
for(var i=0;i
canBindEvent = false;//是否可以执行事件绑定
(function(){
var $downCount = $('#downCount'+i),
date = $downCount.attr('data-date');
//最后一次for循环时 执行事件绑定
if(i == dataList.length-1){
canBindEvent = true;
}
$downCount.downCount({
date: date,
offset: +10
},function(container){
//若不通过闭包处理 i变量取值存在问题 因为 downCount异步执行 不等downCount执行完 外层for循环继续执行
$('#downCount'+i).html("已开始秒杀,数量有限!");
});
})(i);
}

你可能感兴趣的:(WEB前端)