在异步函数中调用回调函数时,Java语言关闭不起作用

时间:2018-08-21 03:24:30

标签: javascript asynchronous callback closures

以下是我的代码,结果是[sex:female]。为什么不是[age:24]? 谢谢您的帮助。

function ftime(callback){
  setTimeout(function() {
    if(undefined!=callback){
      callback();
    }
  },2000);
}
function eg3(){
    var arr={'name':'Tony','age':'24','sex':'female'};
    for(var item in arr){
        if(item=='age'){
            (function(){
                ftime(function(){
                  console.log(item + ':' + arr[item]);//sex:female
                });
            })();
        }
    }
}
eg3();

0 个答案:

没有答案