日期:2014-05-16 浏览次数:20881 次
(function(){
      var fn1 = function(){
        console.log("fn1")
        setTimeout("fn1()",2000);
      },
      fn2 = function(){
       console.log("fn2")
       setTimeout("fn1()",2000)
    }
    fn2();
})()
(function(){
      var fn1 = function(){
        console.log("fn1")
        setTimeout(function(){ fn1(); }, 2000);
      },
      fn2 = function(){
        console.log("fn2")
        setTimeout(function(){ fn1(); }, 2000);
    }
    fn2();
})()
------解决方案--------------------
setTimeout(function(){ fn1(); }, 2000);//这个fn1()调用的是局部的fn1函数
setTimeout("fn1()",2000)//这个fn1()调用的是全局的fn1函数
不知道我说的对不对
------解决方案--------------------
   fn2 = function(){
      console.log("fn2")
      setTimeout("fn1()",2000) //这个时候调用fn1()时,fn1()已经被销毁,所以找不到~~~
   }