js 实现阶乘函数
1、阶乘的公式
(1)n的阶乘⽤公式表⽰为:n!=1 * 2 * 3 * … * (n-1) * n,其中n≥1。
(2)当n=0时,n!=0!=1
2、js实现
⽅法⼆
备注: 使⽤arguments.callee ⽽不使⽤ 函数名factorial, 是减少与函数名的耦合
先来看看它长什么样:
补充: 表达式的执⾏顺序
例⼦:
执⾏顺序:
1)第⼀次循环,即初始化循环。
⾸先执⾏表达式1(⼀般为初始化语句),再执⾏表达式2(⼀般为条件判断语句),判断表达式1是否符合表达式2的条件,如果符合,则执⾏表达式4,否则,停⽌执⾏,最后执⾏表达式3.
2)换个姿势再来⼀次:
⾸先执⾏表达式2,判断表达式3是否符合表达式2的条件;如果符合,继续执⾏表达式4,否则停⽌执⾏,最后执⾏表达式3.如此往复,直到表达式3不再满⾜表达式2的条件。function factorial(num) {    if(num <= 1){  return 1; } else {  return num*arguments.callee(num -1); }}const tureF = factorial;console.log(tureF(5));  // 120factorial = function (){return 0 }console.log(tureF(5));  // 120console.log(factorial);  //ƒ (){ return 0 }
1
2
3
4
5
6
7
8
9
1011
12
13
14
15
16function factorial(x){ if(x < 0){ throw new Error('不能⼩于0'); } for(var y = 1; x > 1;  x--) { y*= x  }; return y; }console.log(1)
1
2
3
4
5
6
7
8
9
10
11for(表达式1;表达式2;表达式3){  表达式4;
js arguments
  }
1
2
3

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。