一段js代码的问题
(function(){
     setTimeout(function(){
       if(aIndex > length){
         aIndex = 1;
       }
       images[0].src = cases["index"+aIndex];
       links[aBefore-1].className = "";
       links[aIndex-1].className = "hover";
       aBefore = aIndex;
       aIndex++;
       setTimeout(arguments.callee,1500)
     },1500)
   })()
学习别人的js代码中,看到一些代码片段不是很懂...
比如上面那一段,有两个setTimeOut,而且两个都是执行的中间的那个方法。个人就觉得是否重复了,
于是就动手去掉了两个setTimeOut中的任意一个,但是无论去掉哪个...这个方法都不能用了。不知道这里是什么原理。
还有就是这里的callee,不知道为什么我就想到了闭包,这里有没有涉及到闭包呢?
------解决方案--------------------
setTimeout只执行一次,所以最后需要一个反复调用自己