小编给大家分享一下js实现递归函数的方法,希望大家阅读完这篇文章后大所收获、下面让我们一起去探讨吧!
, js中的递归函数就是指的是在代码中调用自身的函数,它具有三个特征分别是当输入错误时发生终止的终止条件,基本案例它是递归函数的目标,递归即函数实现的功能
递归函数指的一个函数调用自身函数,接下来在文章中为大家分享的是在js中如何实现递归函数,具有一定的参考价值,希望对大家有所帮助。
我们可以使用JavaScript从函数的外部或者是在其他函数中调用函数。甚至是可以从内部调用函数。当一个函数调用自身时,就称为递归函数,例
& lt; script> 函数演示(x) { 如果(x & lt;0)返回; 如果(x===0)返回1; 返回x *演示(x - 1); } console.log(演示(3)); & lt;/script>
<强>输出结果为:6 强>
从上面的例子可以看出在<代码>返回x *演示(x - ? 1) 代码>中实际上是再次调用自身函数<代码>(演示(x - 1))> 代码,但是其参数比第一次调用的参数少一个,这就是递归函数
<强>递归函数的三大特征强>
<强>终止条件强>
终止条件就类似于紧急制动器,它在输入错误的情况可以防止递归,在上文的案例中<代码>“如果(x & lt;0)返回"> 代码就是设置的终止条件,所以说当输入负数时就不会运行递归函数。
<>强基本案例强>
基本案例就是递归函数的目标。基本案例通常是放在一个如果语句中,在上文的案例中<代码>“如果(x===0)返回1;“> 代码就是一个基本案例,因为当x的值减少到0时就能成功的确认阶乘值了
<强>递归强>
递归就是实现的功能,在上例中“<代码>返回x *演示(x ? ? 1); "> 代码就是递归函数实际发生的位置,将函数返回的值x乘以<代码>演示(x - 1) 代码>的值就是我们最后所要求的值
例:
& lt; script> 函数revStr (str) {//终止条件//str===& # 39; & # 39;是基本案例 如果(str===& # 39; & # 39;)返回& # 39;& # 39;;//递归 返回revStr (str.substr (1)) + str [0]; } console.log (revStr(& # 39;猫# 39;)); & lt;/script>
<强>输出结果为:tac 强>
看完了这篇文章,相信你对js实现递归函数的方法有了一定的了解,想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!