/* 用d递归,比循环的时间多100倍 */ function Fibonacci(n) { var result; if(n<1){ return 0; }else if(n==1 || n==2){ return 1; }else{ return Fibonacci(n-1)+Fibonacci(n-2); } } /* 用循环自下而上累加 */ function Fibonacci(n) { var result; //使用自下而上的循环 if(n<1){ return 0; }else if(n==1 || n==2){ return 1; }else{ var left=0; var right=1; result=left+right;//n=2 for(var i=3;i<n+1;i++){ left=right; right=result; result=left+right; } return result; } }