阶乘
1.使用 for 循环方式实现
function factorial(n) {
let i = 1;
let sum = 1;
for (; i <= n; i++) {
sum = sum * i;
}
return sum;
}
2. 不使用 for 循环方式实现
function factorial(n) {
let num = 1;
let i = 1;
function factorial1() {
if (i < n) {
i++;
num = num * i;
factorial1();
}
}
factorial1();
return num;
}
斐波那契数列
1.使用 for 循环方式实现
function fibonacci(n) {
if (n === 1 || n === 2) {
return 1;
}
let n1 =1; // 第一位
let n2 =1; // 第二位
let fib;
for (let i = 3; i <= n; i++) {
fib = n1+n2;
n1=n2;
n2= fib;
}
return fib;
}
2.不使用 for 循环实现
function fibonacci(n) {
if(n === 1 || n === 2) {
return 1;
}
let i = 3;
let n1 =1; // 第一位
let n2 =1; // 第二位
let fib;
function fibonacci1() {
if(i <= n) {
i++;
fib = n1 + n2;
n1 = n2;
n2 = fib;
fibonacci1();
}
}
fibonacci1();
return fib;
}