var i=0;
      for(var j=0;j<5;j++)
      {
        i=addd(j);
        alert(i);//输出了10遍0
      }
       alert(i);//输出结果0
      function addd(k)
      {
        setTimeout(function(){k=k+1;},100);//延时100毫秒
        return k;
      }
i=addd(j);要传入的应该是j吧

解决方案 »

  1.   

    setTimeout里的函数没有执行前数据就返回了,你怎么取值
      

  2.   

    setTimeout里的函数没有执行前数据就返回了,你怎么取值
      

  3.   

    第一,i=addd(i);这个没问题,就是要执行10遍
    第二,“setTimeout里的函数没有执行前数据就返回了,你怎么取值”,这个只是个例子,用setTimeout就是要表示addd函数里的内容多执行速度慢。
      

  4.   

    第一,i=addd(i);这个没问题,就是要执行10遍
    第二,“setTimeout里的函数没有执行前数据就返回了,你怎么取值”,这个只是个例子,用setTimeout就是要表示addd函数里的内容多执行速度慢。
      

  5.   

    function addd(k)
    {
    setTimeout("result("+(k+1)+")",100);//延时100毫秒
    }
    function result(k){
    alert(k);
    }
    addd(1);
      

  6.   

    貌似你那几行代码是无法完成你本意的。加个debugger,在IE下单步跟踪一下你就知道了。如果一定要延时,你可以使用外部延时DLL,注册后使用sleep 100来实现你的需求
      

  7.   

    如果一定要延时,你可以使用外部延时DLL,注册后使用sleep 100来实现你的需求
           支持这句
           支持这句
      

  8.   

    sorry,是我没表达清,结贴了,没有我要的答案,散分吧。