递归——耦合问题
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));