javascript中这个递归是怎麼算的,不能理解里面的逻辑,期待大家的帮助!

varsum=function(n){if(1==n)return1;elsereturnn+sum(n-1);//这句是循环吗?}alert(sum(100));... var sum=function(n){
if(1==n)return 1;
else return n+sum(n-1); //这句是循环吗?
}
alert(sum(100));
展开
 我来答
el13
2009-11-27 · TA获得超过1436个赞
知道小有建树答主
回答量:1178
采纳率:0%
帮助的人:1057万
展开全部
不是循环是递归!
现在你传递100进去,因为1==100不成立,执行else语句
return 100 + sum(99)类推
return 100+99+sum(98);
.......
return 100+99+...+2+sum(1);
return 100+99+...+2+1;
一个正直的吧友
2009-11-27 · TA获得超过3143个赞
知道小有建树答主
回答量:941
采纳率:0%
帮助的人:1094万
展开全部
翻译成普通的js是这样:

function sum(n){
if(1==n)return 1;
else return n+sum(n-1); //这句当然是递归,在自己的方法体里调用自己
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5f6d9b4
2009-11-27 · 超过81用户采纳过TA的回答
知道小有建树答主
回答量:351
采纳率:0%
帮助的人:173万
展开全部
是啊。
方法也是一个对象就是了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
卡路里亏空
2009-11-27 · TA获得超过4567个赞
知道小有建树答主
回答量:1229
采纳率:0%
帮助的人:793万
展开全部
1+dao 100
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式