该操运用到了参数函数相关知识,基本原理是利用作为“钥匙”的绝对参数开作为“门”的相对参数的“门”,然后作为“门”的相对参数包含带有变量的绝对参数(例如:fun(a+1)),俗称套娃。
具体案例如下:
<script>
function fun(a){
alert("您已进入死循环")
fun(a+1)
}
fun(0);
</script>
由于未设置限制变量,此参数函数会无限循环,页面会卡顿。
设置条件变量return(return满足条件直接打印结果)可走出循环
<script>
function fun(a){
if(a == 6){
return alert("您已完成"+a+"次循环");
}
document.write("您已进入第"+a+"次循环<br>");
fun(a+1)
}
fun(0);
</script>
这种参数循环可用于例如函数组早出最大参数的习题中(例如)
<script>
var a =[1,123,500,115,44,88];
var b =a[0];
function fun1(i){
if(i == a.length ) {return b};
if( b < a[i]){b = a[i]};
fun1(i+1)
}
fun1(0);
console.log(b);
</script>