js 循环中调用异步方法的问题
代码如下:
function test(){
for( var i = 0;i<10;i++){
//这里的request是一个异步方法
request( i ,function(res){
callback(i,res.result)
})
}
}
function callback(i,result){
console.log( ‘i=’,i,'and result = ',result)
}
这里的问题是,request 是异步方法,立即返回,当回调发生时,i的值已发生变化?这个是个作用域的问题。
请问,这个问题怎么解决,并且能否说明这个相关的js知识点是什么?
另外,变量定义时, 用var 和const 有什么区别 ? 作为一个java程序员,我有点没弄明白