递归——耦合问题

    function factorial(n) {
        if (n <= 1) {
            return 1;
        } else {
            return n * factorial(n - 1);
            //可行,但是耦合性高,外部函数名改变,内部也要随之更改
        }
    }
    alert(factorial(4));
    function factorial(n) {
        if (n <= 1) {
            return 1;
        } else {
            return n * arguments.callee(n - 1);
            //低耦合,函数名改变不会影响函数执行
        }
    }
    alert(factorial(4));

 

posted @ 2016-03-27 13:53  绯乐  阅读(201)  评论(0编辑  收藏  举报