1.递归方式
// 斐波那契数列就是一个数组中的前两项的和=第三项的值 var arr = [1, 1, 2, 3, 5, 8, 13, 21, 34]; // 传入一个值,这个值是在数组中的位置(索引,不过索引是从1开始的) function fib(n) { if (n == 1 || n == 2) { return n } return fib(n - 1) + fib(n - 2); } var res = fib(3); console.log(res, "递归方式");
2.for循环方式
var arr = [1, 1, 2, 3, 5, 8, 13, 21, 34]; function fibonacci(n) { if (n === 1 || n === 2) { return n; } var n1 = 1, n2 = 1, sum; for (let i = 2; i < n; i++) { sum = n1 + n2 n1 = n2 n2 = sum } return sum } let res2 = fibonacci(5); console.log(res2, "for循环方式");