日志分类 > 技术文档
js递归解决方案
发布时间:2012-12-31 发布: 分类:技术文档
递归函数是在一个函数通过调用自身的情况下去解决的:
方式如下:
function factorial(num){
if(num<=1){
return 1;
}else{
return num*factorial(num-1);
}
}
但是这在js里面可能会出现错误:
var anotherFactorial = factorial;
factorial=null;
alert(anoterFactorial(4));
因为在调用anoterFactorial时内部的factorial已经不存在了。
解决方法是通过arguments.callee来解决。
如下:
function factorial(num){
if(num<=1){
return 1;
}else{
return num*arguments.callee(num-1);
}
var anotherFactorial = factorial;
factorial = null;
alert(anotherFactorial(4));
成功!!!!
}
查看 [2616] 评论 [0]
相关标签:
程序开发
文章评论
暂无数据!
我来说两句
最新评论