常規方法以下:算法
var fn =function(n){
if(n>=1) return n+fn(n-1);
return 0;
}
alert(fn(10));//55函數
上面的是普通作法,但在複雜的程序設計中咱們或許只要求調用一次該函數,在要求儘可能少的函數名定義時,匿名函數是咱們的比較理想的選擇。但匿名函數如何遞歸呢?這裏咱們能夠使用arguments.callee來實現。arguments.callee指代的是當前執行的函數的一個引用。學習
var b=(function(n){
if(n>=1) return n+arguments.callee(n-1);
return 0;
}
})(10);
alert(b);設計
看到沒?很方便的就實現了匿名函數的遞歸運算。遞歸
關於arguments.callee是個神馬貨,咱們會在後續的文章中和你們一塊兒學習。io