//简单的做法 function fn(n) {//定义斐波那契数列的前两项 var num1 = 1; var num2 = 1; //从第3项开始循环 for (var i = 3; i <= n; i++) { //每一项是前两项的和,所以定义第三变量来记录数据以便交换变量; var temp = num1 + num2; num1 = num2; num2 = temp; } return temp; } console.log(fn(8)); //打印斐波那契数列的第8项为21 //递归的方法 function f(n) { if (n == 1 || n == 2) { return 1; } else { return f(n - 1) + f(n - 2); } } console.log(fn(8));