我分析从一本书我读了一些代码并存在混淆了我一点点的一小片:是arguments.callee的还是安全使用或是否有更好的选择
//... some code
setTimeout(function(){
//...some code
if(some condition)
setTimeout(arguments.callee, 0);
}, 0);
是什么有点让我困惑的是,同一本书提到“被调用者”的财产已被弃用,除非严格必要(我是释义),否则不应使用它。所以我想知道这是否是其中一种情况,或者是否有更好的方法来完成递归调用。某处在互联网上,我读了以下可以完成同样的事情:
//... some code
setTimeout(function myRecursiveFunction(){
//...some code
if(some condition)
setTimeout(myRecursiveFunction, 0);
}, 0);
这是正确的吗?还有更好的方法来解决这个问题吗?是否安全并继续使用arguments.callee?
谢谢你的任何澄清。
[Arguments.callee已弃用 - 应该用什么来代替?](http://stackoverflow.com/questions/8361642/arguments-callee-is-deprecated-what-should-be-used-instead ) – DavidRR 2015-06-18 19:26:16