美文网首页好程序员大前端
好程序员web前端培训分享函数作用域及递归

好程序员web前端培训分享函数作用域及递归

作者: ab6973df9221 | 来源:发表于2019-06-04 14:13 被阅读0次

好程序员web前端培训分享函数作用域及递归:作用域的生命周期。

var a = 10;

function m1(){ 

    var a = 5;

    alert(a);

}

形参(形式参数)与实参(实际参数)的重要区别

var a = 10;

var x=0;

function fn(x){

    x =a + 10;

}

fn (a);

递归的用法

什么是递归?

自身调用自身!

function pr(){

    return pr()

}

关键点:

1.终止条件

2.运算规则

function pr(n){

     if(n==1){  // 终止条件

          return n;

     }

     return pr(n-1)+n;    

}

打印任意个hello world;

function pr(n){

    if(n==0){

        return

    }

    document.write('hello world!!<br>');

    return pr(n-1);

}

pr(10)

案例:求n个数字的和,5 计算1+2+3+4+5

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title></title>

</head>

<body>

</body>

<script type="text/javascript">

//函数的声明

function getSum(x) {

if (x == 1) {

return 1;

}

return x + getSum(x - 1);

}

//函数的调用

console.log(getSum(5));

</script>

</html>

案例:输出斐波那契额数列数列的前20项(递归)

斐波那契数列指的是这样一个数列1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368........

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title></title>

</head>

<body>

</body>

<script type="text/javascript">

function fib(n) {

if (n == 1 || n == 2) {

return 1

}

return fib(n - 1) + fib(n - 2)

}

for (var i = 1; i <= 20; i++) {

document.write(fib(i) + '<br>')

}

</script>

</html>

������>�

相关文章

网友评论

    本文标题:好程序员web前端培训分享函数作用域及递归

    本文链接:https://www.haomeiwen.com/subject/pvblxctx.html