// 一个项目,最多用个1两次// 函数中,调用它自己,这样的函数就是递归函数// ---------------------------------------------------// let i = 1// function fn() {// // 加一个临界条件,说明一下,什么时候退出这个函数(出口)// if (i > 10) return// console.log(i)// i++// fn()// }// fn()// -----------------------------------------------------// 计算一个数的阶乘// 10阶乘:10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1// 5的阶乘:5 * 4 * 3 * 2 * 1// 48 ???// 规律: n的阶乘 = n * (n-1)的阶乘// 一定要相信自己,我一定能够写一个函数// 功能:计算一个数的阶乘// 当我需要计算一个数的阶乘的时候,就调用这个函数即可// function fn(n) {// if (n === 1) return 1// // 如果n不是1呢?// // return n * (n-1)的阶乘// return n * fn(n - 1)// }// // console.log(fn(4))// console.log(fn(10))// --------------------------------------------------// 斐波那契数列// 位置: 1 2 3 4 5 6 7 8 ...........................40// 数字: 1 1 2 3 5 8 13 21...........................102334155// 写一个函数,功能是:计算一个位置的数字function fn(n) { if (n === 1 || n === 2) return 1 // return n-1位置的数字 + n-2位置的数字 return fn(n - 1) + fn(n - 2)}// console.log(fn(6))// console.log(fn(8))console.log(fn(40))